# PDFMonkey — MCP server on mcp.ai > Connect your PDFMonkey account and use 18 tools for documents straight from your AI agent. Connect with your own API key. PDFMonkey is a service that automates the generation of PDF documents from templates, allowing users to create professional PDFs programmatically. By: mcp.ai · official Page: https://mcp.ai/pdfmonkey ## Connect (MCP protocol) Remote MCP endpoint (HTTP, streamable): https://api.mcp.ai/p_pdfmonkey?ms=1787293740000 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/pdfmonkey/_endpoints # public; lists every endpoint Call: POST https://api.mcp.ai/api/pdfmonkey/ 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/pdfmonkey/skill.md Postman collection (v2.1): https://mcp.ai/pdfmonkey/postman.json ## Tools - pdfmonkey_create_document(document: object) — Tool to create a Document. Use when you need to instantiate a PDF from a template; set status='pending' to queue immediate generation. Ensure valid `document_template_id` is provided. - pdfmonkey_create_document_sync(document: object) — Tool to create a document and wait for generation to finish. Use when immediate PDF is needed. - pdfmonkey_create_template(ttl?: integer, body?: string, app_id?: string, settings?: object, body_draft?: string, identifier: string, scss_style?: string, sample_data?: string, edition_mode?: string, pdf_engine_id?: string, settings_draft?: object, scss_style_draft?: string, sample_data_draft?: string, pdf_engine_draft_id?: string) — Creates a new PDF document template in PDFMonkey. Use this to define reusable templates with HTML/Liquid content and CSS styles for generating PDF documents. Typical workflow: Create template → Previe - pdfmonkey_delete_document(id: string) — Tool to delete a Document by its ID. Use when you need to permanently remove a document after confirming its ID. Returns 204 No Content on success. - pdfmonkey_delete_template(id: string) — Tool to delete a document template by ID. Use when you need to remove obsolete templates after validation. - pdfmonkey_download_document_file(download_url: string) — Tool to download a generated PDF file via a presigned URL. Use after obtaining a valid download_url from the Document details endpoint. Verify document status is 'success' (not 'draft' or 'pending') v - pdfmonkey_get_current_user() — Tool to retrieve details about the currently authenticated user. Use when you need account info (quota, plan, email, locale) after authentication. - pdfmonkey_get_document(id: string) — Tool to fetch a Document by its ID. Returns the full document record including payload, meta, logs, and download URL. Note: download_url is time-limited; if a download attempt fails, call GetDocument - pdfmonkey_get_document_card(id: string) — Tool to fetch a DocumentCard by ID. Use when you have a DocumentCard ID and need its download URLs, status, and metadata. Use after generating or updating a DocumentCard. - pdfmonkey_get_template(id: string) — Tool to fetch a Document Template by ID. Use when you need the template's content, styles, settings, and preview URL. - pdfmonkey_list_document_cards(status?: string, page_number?: integer, workspace_id?: string, updated_since?: integer, document_template_ids?: string[]) — Tool to list DocumentCards. Use when you need to retrieve multiple DocumentCards with optional pagination and filtering by template, status, workspace, or update time. - pdfmonkey_list_pdf_engines() — Lists all available PDF rendering engines in PDFMonkey. Returns engine IDs, version names, numeric versions, and deprecation status. Use this to select a PDF engine when creating templates or generati - pdfmonkey_list_templates(page?: integer, sort?: string, folders?: string, workspace_id: string) — List all document template cards for a workspace. Use this action to: - Retrieve all templates available in a workspace - Filter templates by folder (or get only root folder templates with folders='no - pdfmonkey_list_workspaces() — Tool to list workspaces (applications). Use when you need all available workspaces for the authenticated user after login. - pdfmonkey_preview_template(preview_url: string) — Fetches the template preview viewer page from PDFMonkey's preview_url. Returns an HTML viewer page that displays the rendered template draft. Use this after obtaining a template's preview_url via Get - pdfmonkey_update_document(id: string, document: object) — Updates an existing PDFMonkey document's payload, metadata, template, or status. Common use cases: - Modify document data (payload) before generation - Change the template used for the document - Add - pdfmonkey_update_template(id: string, ttl?: integer, body?: string, settings?: object, body_draft?: string, identifier?: string, scss_style?: string, sample_data?: string, edition_mode?: string, pdf_engine_id?: string, settings_draft?: object, scss_style_draft?: string, sample_data_draft?: string, template_folder_id?: string, pdf_engine_draft_id?: string) — Tool to update a document template’s properties. Use when you need to modify an existing template’s content, styles, settings, engine, folder, or TTL. - pdfmonkey_view_public_share_link(token: string, filename: string, public_share_url?: string) — Tool to download a publicly shared PDF via its permanent share link. Use when the document's public_share_link is enabled to fetch the PDF file directly. ## Example prompts - "What can I do in PDFMonkey?" - "Show me a summary of my PDFMonkey account" ## Links Docs: https://mcp.ai/docs/mcps/pdfmonkey Website: https://mcp.ai/mcps/pdfmonkey