# PDFgen — MCP server on mcp.ai > Connect your PDFgen account and use 8 tools for documents straight from your AI agent. Connect with your own API key. PDFgen creates PDFs from reusable templates, HTML, Markdown, or natural-language prompts and manages account templates and usage logs. By: mcp.ai · official Page: https://mcp.ai/pdfgen ## Connect (MCP protocol) Remote MCP endpoint (HTTP, streamable): https://api.mcp.ai/p_pdfgen?ms=1787296080000 Add it as a custom/remote MCP connector, then authenticate when prompted. ## REST API (no MCP client required) Every tool is also a REST endpoint, authed with a workspace API key. Discover: GET https://api.mcp.ai/api/pdfgen/_endpoints # public; lists every endpoint Call: POST https://api.mcp.ai/api/pdfgen/ Authorization: Bearer sk_live_… # create one at https://mcp.ai/settings/api-keys Content-Type: application/json Body: { …args } → { "ok": true, "tool": "", "result": { … } } ## Developer docs How to use (MCP or REST), markdown: https://mcp.ai/pdfgen/skill.md Postman collection (v2.1): https://mcp.ai/pdfgen/postman.json ## Tools - pdfgen_create_template(name: string, engine?: string, content: string) — Create a reusable HTML template for later PDF generation. - pdfgen_delete_template(template_id: string) — Permanently delete one saved template owned by the connected account. - pdfgen_generate_pdf(data?: object, html?: string, engine?: string, format?: string, prompt?: string, markdown?: string, password?: string, file_name?: string, expiry_time?: number, orientation?: string, protect_pdf?: boolean, template_id?: string) — Generate a PDF from exactly one saved template, HTML document, Markdown document, or AI prompt and return a temporary download URL. - pdfgen_get_account() — Return the connected PDFgen account, organization, plan, and current credit usage. - pdfgen_get_template(template_id: string) — Get one saved PDFgen template, including its complete HTML content. - pdfgen_list_templates(limit?: integer, next_cursor?: string) — List saved PDF templates owned by the connected account and return one page with a continuation cursor. - pdfgen_list_usage_logs(limit?: integer, next_cursor?: string) — List recent PDFgen API calls for auditing, billing inspection, and generation troubleshooting. Returns one page with a continuation cursor. Usage logs are eventually consistent, so a just-completed ca - pdfgen_update_template(name?: string, engine?: string, content?: string, template_id: string) — Partially update a saved template's name, HTML content, or rendering engine without replacing omitted fields. ## Example prompts - "What can I do in PDFgen?" - "Show me a summary of my PDFgen account" ## Links Docs: https://mcp.ai/docs/mcps/pdfgen Website: https://mcp.ai/mcps/pdfgen