{
  "markdown": "# @docmake/mcp\n\nOfficial [Model Context Protocol](https://modelcontextprotocol.io) server for [DocMake](https://docmake.io), the AI-native document generation platform. It lets AI assistants like Claude generate DOCX and PDF documents from your DocMake templates: no glue code, just a conversation.\n\n> \"Generate the invoice for Acme Corp: 10 hours of consulting at 100 EUR, due in 14 days.\"\n\nThe assistant picks your invoice template, fills in the data, renders a PDF through the DocMake API, and hands you the file path.\n\n## Example prompts\n\n- \"Generate the invoice for Acme Corp: 10 hours of consulting at 100 EUR, due in 14 days.\"\n- \"Which fields does my employment contract template need? Then fill it in for Maria Ionescu, starting 1 October, and save it as a DOCX.\"\n- \"Import ~/Documents/quarterly-report.docx as a DocMake template, then show me the variables it found.\"\n\n## Setup\n\nYou need a DocMake API key. Create one at [app.docmake.io](https://app.docmake.io) under Settings > API Keys (free plan works).\n\n### Claude Desktop\n\nAdd to `claude_desktop_config.json` (Settings > Developer > Edit Config):\n\n```json\n{\n  \"mcpServers\": {\n    \"docmake\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@docmake/mcp@latest\"],\n      \"env\": {\n        \"DOCMAKE_API_KEY\": \"dm_your_key_here\"\n      }\n    }\n  }\n}\n```\n\n### Claude Code\n\n```bash\nclaude mcp add docmake --env DOCMAKE_API_KEY=dm_your_key_here -- npx -y @docmake/mcp@latest\n```\n\n### Cursor / other MCP clients\n\nAny client that supports stdio MCP servers works with the same command: `npx -y @docmake/mcp@latest` with `DOCMAKE_API_KEY` in the environment.\n\n### Remote server (no install)\n\nDocMake also hosts the same six tools over streamable HTTP, so a client that\nspeaks remote MCP needs nothing installed:\n\n```json\n{\n  \"mcpServers\": {\n    \"docmake\": {\n      \"url\": \"https://app.docmake.io/mcp/v1\",\n      \"headers\": { \"Authorization\": \"Bearer dm_your_key_here\" }\n    }\n  }\n}\n```\n\nTwo differences from this package. `render_document` returns a short-lived\ndownload link instead of writing the file to your machine, and `import_docx`\ntakes the document as base64 rather than a path, because the server runs\nremotely and cannot read your disk. Everything else, including strict\nrendering, behaves the same.\n\n## Configuration\n\n| Variable | Required | Default | Purpose |\n|---|---|---|---|\n| `DOCMAKE_API_KEY` | yes | | API key from app.docmake.io, Settings > API Keys |\n| `DOCMAKE_OUTPUT_DIR` | no | `~/Downloads/DocMake` | Where rendered documents are saved |\n| `DOCMAKE_API_BASE` | no | `https://app.docmake.io/api/v1` | API base URL, override for self-hosted setups |\n\n## Tools\n\n| Tool | What it does |\n|---|---|\n| `list_templates` | List the templates in your workspace, with search and pagination |\n| `get_template` | A template's field tree: every variable it expects, ready to map to render data |\n| `render_document` | Render a template to PDF or DOCX and save the file locally |\n| `create_template` | Create a new template from a document schema JSON |\n| `import_docx` | Import a local .docx file as a new template (base64 on the remote server) |\n| `get_usage` | Plan, render quota, and rate limits for the current billing period |\n\nThe server also exposes your templates as MCP resources and ships a `generate-document` prompt for a guided render flow.\n\n## How rendering works\n\n`render_document` is strict by default: if any template variable has no value in `data`, the render fails and returns the list of missing keys, so the assistant can ask you for the values instead of producing an incomplete document. Pass `strict: false` to render with each variable's fallback text instead.\n\nVariables can declare a default value in the template editor. A defaulted variable never counts as missing: omit it from `data` and the default is rendered, even in strict mode. `get_template` shows each field's `default` (and `example`, a preview-only sample that is never rendered).\n\nRendered files are saved to `DOCMAKE_OUTPUT_DIR` and never overwrite an existing file.\n\n## Privacy Policy\n\nFull policy: [https://docmake.io/privacy](https://docmake.io/privacy)\n\n**What this server collects.** Nothing of its own. It has no telemetry and no\nanalytics, and it never reads your chat history, memory, or files other than a\n`.docx` you explicitly pass to `import_docx`.\n\n**What it sends, and where.** Every tool call is a request to the DocMake API at\n`https://app.docmake.io/api/v1` over HTTPS, authenticated with your API key.\nThose requests carry only what the call needs: a template id, the data you asked\nto render, or the `.docx` you asked to import. DocMake processes that data to\nrender your document.\n\n**Storage and retention.** Your templates and account data live in your DocMake\nworkspace and are retained until you delete them or close the account. Rendered\ndocuments are written to your own machine, under `DOCMAKE_OUTPUT_DIR`\n(`~/Downloads/DocMake` by default), and are never uploaded anywhere else. Your\nAPI key stays on your machine: the desktop extension keeps it in your operating\nsystem keychain, and a manual setup keeps it in your MCP client's config file.\n\n**Third-party sharing.** Render data is not sold, and it is not shared with\nthird parties beyond the subprocessors DocMake needs to run the service, listed\nin the full policy.\n\n**Contact.** support@docmake.io for privacy questions, data export, or deletion.\n\n## Links\n\n- [DocMake](https://docmake.io), template gallery and product\n- [API documentation](https://docmake.io/developers)\n- [Dashboard](https://app.docmake.io)\n- Support: support@docmake.io\n\n## License\n\nMIT\n",
  "bytes": 5595,
  "sha": "c725527e0277e041ee1b99a679d87576968d34f473fb9ad59743926b309d9f4d",
  "repo_slug": "docmake-io/mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_docmake_mcp_cf40874e/readme"
}