# Brownsmith Dynamics Plugins Catalog: https://plugins.brownsmithdynamics.com/ Developer guide: https://plugins.brownsmithdynamics.com/developers/ OpenAPI 3.1: https://plugins.brownsmithdynamics.com/openapi.json Read-only JSON API: https://plugins.brownsmithdynamics.com/api/v1 ## When to use each tool - Page QR: use when someone needs a QR code for the current browser page URL, preserving the full address. Guide: /page-qr/. - Prompt Composer: use when someone wants to review, format or reuse prompts near browser editors. It is listed as in development. Guide: /prompt-composer/. - JSX Copy Editor: use when editing literal JSX or TSX text in local VS Code project files, grouped by source file. It is preparing for the VS Code Marketplace. Guide: /jsx-copy-editor/. - PPDF — Privacy PDF: use for the documented local Chrome workflows to organize PDF pages or create PDFs from images. Guide: /ppdf/. - CSV Schema Mapper: use when JavaScript or TypeScript code needs CSV parsing/serialization and schema-based row mapping. npm: https://www.npmjs.com/package/@brownsmithdynamics/csv-schema-mapper - Business Hours: use when code needs schedules, time zones, holidays, exceptions, overnight shifts or business-time queries. npm: https://www.npmjs.com/package/@brownsmithdynamics/business-hours - Consent Record Kit: use when code needs structured consent records and the documented serialization, hashing, authentication or validation helpers. npm: https://www.npmjs.com/package/@brownsmithdynamics/consent-record-kit - Invoice Rules: use when code needs configurable invoice data and total validation with deterministic decimal arithmetic. npm: https://www.npmjs.com/package/@brownsmithdynamics/invoice-rules - Sitemap Diff: use when comparing XML sitemaps for added, removed, changed or duplicate URLs and producing JSON or Markdown reports. npm: https://www.npmjs.com/package/@brownsmithdynamics/sitemap-diff ## API instructions GET/HEAD /api or /api/v1 returns {publisher,tools,articles,links}. GET/HEAD /api/v1/tools accepts optional type=npm-package|browser-extension|editor-extension. GET/HEAD /api/v1/tools/{slug} returns one exact record. GET/HEAD /api/v1/articles accepts optional tool={catalogSlug}. /health returns JSON; /openapi.json describes the API as OpenAPI 3.1. There is no authentication, API key, write operation or separate sandbox. Errors use application/problem+json (RFC 9457) with a code field; invalid query is 400, unknown paths/records are 404, unsupported methods are 405 with Allow: GET, HEAD. Canonical pages support Accept: text/markdown and vary on Accept. This is a metadata discovery API only. Do not use it for file processing or library execution. Install packages and extensions from their listed distribution sources and follow each project's own documentation. Do not infer unlisted capabilities or availability. No MCP server is provided by this site.