
PDFMakerAPI
from GerardoBarrera
Generate PDF's such as invoices,receipts,documents, letters, proposals using natural language and get a link to view/edit/share your pdf.
PDFMakerAPI MCP server
An MCP server for PDFMakerAPI. It
exposes a single create_document tool that turns a plain-English document description into a
shareable link which opens in the PDFMakerAPI editor β preview it, edit any field, and download
the PDF.
Works with Claude Desktop, Claude.ai, Cursor, Windsurf, Cline, Zed, VS Code, ChatGPT, and any
other MCP client. It's a thin client of the public API at https://api.pdfmakerapi.com, so it needs
no account or credentials of its own.
What is PDFMakerAPI?
PDFMakerAPI is a PDF template builder and PDF generation API. Instead of hard-coding documents or wrestling with HTML-to-PDF converters that break when your content changes, you design a reusable template once in a visual, no-code editor β placing text, tables, images, and dynamic fields exactly where you want them β then feed it data to produce a finished, editable PDF.
Generate a single document or thousands. Fill a template in yourself, share a link so anyone completes it in the browser as a fillable PDF form, send JSON to the REST API, trigger generation from no-code tools like Zapier, Make, and n8n, or create documents straight from AI agents like Claude and ChatGPT. Prefer to start from a prompt? Describe what you need and let Quill build it.
Teams use PDFMakerAPI for invoices, receipts, certificates, reports, and contracts β anything you'd otherwise rebuild by hand every time the data changes. Start building free with 100 PDFs a month.
Develop
git clone https://github.com/GerardoBarrera/pdfmakerapi-mcp.git
cd pdfmakerapi-mcp
npm install
npm run build # compile to dist/
npm run dev # run from source (tsx)git clone https://github.com/GerardoBarrera/pdfmakerapi-mcp.git
cd pdfmakerapi-mcp
npm install
npm run build # compile to dist/
npm run dev # run from source (tsx)Quick install
One-click:
Or add the same config manually (works in every desktop client):
{
"mcpServers": {
"pdfmakerapi": {
"command": "npx",
"args": ["-y", "@pdfmakerapi/mcp"]
}
}
}Setup by client
<details> <summary><b>Claude Desktop</b></summary>Settings β Developer β Edit Config (claude_desktop_config.json), add the mcpServers block above, and restart Claude.
Use the Add to Cursor button, or add the block to ~/.cursor/mcp.json (global) or .cursor/mcp.json (per-project).
Add the block to ~/.codeium/windsurf/mcp_config.json (or via Settings β Cascade β MCP).
Cline β MCP Servers β Configure, and add the mcpServers block.
Use the Install in VS Code button, or add to .vscode/mcp.json (note: VS Code uses a servers key):
{
"servers": {
"pdfmakerapi": { "command": "npx", "args": ["-y", "@pdfmakerapi/mcp"] }
}
}In settings.json:
{
"context_servers": {
"pdfmakerapi": { "command": { "path": "npx", "args": ["-y", "@pdfmakerapi/mcp"] } }
}
}Hosted (remote) option β no install
If your client supports remote MCP servers, just point it at the hosted endpoint β no npx, no Node:
https://api.pdfmakerapi.com/mcp- Claude.ai (web): Settings β Connectors β Add custom connector β paste the URL.
- ChatGPT (Plus/Pro/Enterprise): Settings β Connectors β add the URL.
- Cursor / others: add
{ "url": "https://api.pdfmakerapi.com/mcp" }instead ofcommand/args.
Usage
Ask your assistant for a document:
"Make a professional invoice for Acme with 3 line items." "Create a course completion certificate." "Build a clean one-page resume."
It calls create_document and returns a link like https://app.pdfmakerapi.com/d/<id> β open it to
preview, edit any field, and download the PDF.
Configuration
| Env var | Default | Purpose |
|---|---|---|
PDFMAKERAPI_BASE_URL | https://api.pdfmakerapi.com | Point at a different API (e.g. http://localhost:3001 for local dev). |
Troubleshooting
- Server doesn't appear in your client β restart the client after editing its MCP config, and check the JSON is valid (no trailing commas). For remote clients, confirm the URL is exactly
https://api.pdfmakerapi.com/mcp. npxfails to start β ensure Node.js 18+ is installed (node -v), then retrynpx -y @pdfmakerapi/mcp@latest.- Connection / timeout on the remote endpoint β verify your network/proxy allows HTTPS to
api.pdfmakerapi.com, and that you're using the Streamable HTTP transport. - "Document is too large" β documents are capped at ~1 MB of JSON; trim large tables or split into multiple documents.
- The returned link won't open β copy the full link (it ends in a document ID); if it 404s, generate the document again.
- Still stuck? β open a GitHub issue or email support@pdfmakerapi.com.
Licensed under MITβ you can use, modify, and redistribute it under that license's terms.
License
MIT