# Craftmypdf — MCP server on mcp.ai > Connect your Craftmypdf account and use 12 tools for documents straight from your AI agent. Connect with your own API key. CraftMyPDF is a web-based platform that enables users to design and generate customizable PDF documents using pre-designed templates and dynamic data. By: mcp.ai · official Page: https://mcp.ai/craftmypdf ## Connect (MCP protocol) Remote MCP endpoint (HTTP, streamable): https://api.mcp.ai/p_craftmypdf?ms=1787298900000 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/craftmypdf/_endpoints # public; lists every endpoint Call: POST https://api.mcp.ai/api/craftmypdf/ 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/craftmypdf/skill.md Postman collection (v2.1): https://mcp.ai/craftmypdf/postman.json ## Tools - craftmypdf_add_text_to_pdf(url: string, expiration?: integer, output_file?: string, textSettings: object[], cloud_storage?: integer) — Tool to add text annotations to a PDF including page numbers, watermarks, and custom text at specified positions. Supports dynamic variables like {{pageNumber}} and {{totalPages}} for automatic page n - craftmypdf_add_watermark(url: string, text: string, opacity?: number, rotation?: integer, font_size?: integer, hex_color?: string, expiration?: integer, font_family?: string, output_file?: string, cloud_storage?: integer, postaction_s3_bucket?: string, postaction_s3_filekey?: string) — Tool to add a text watermark to a PDF with customizable font, size, color, opacity, and rotation. Use when you need to overlay watermark text (e.g., CONFIDENTIAL, DRAFT) on PDF documents. For more adv - craftmypdf_create_editor_session(backURL?: string, canSave?: boolean, jsonMode?: integer, canPreview?: boolean, expiration?: integer, canEditJSON?: boolean, canShowData?: boolean, canShowHelp?: boolean, template_id: string, canCreatePDF?: boolean, canShowHeader?: boolean, canShowLayers?: boolean, canViewSettings?: boolean, canShowExpressionDoc?: boolean, canShowPropertyPanel?: boolean, canShowPropertyBinding?: boolean) — Tool to create an embeddable editor session URL for a template. Use when you need to embed the PDF editor for a specific template. - craftmypdf_create_pdf_async2(data: object|string, version?: string, expiration?: integer, template_id: string, webhook_url?: string, cloud_storage?: integer, resize_format?: string, resize_images?: boolean, resize_max_width?: integer, resize_max_height?: integer, image_resample_res?: integer, postaction_s3_bucket?: string, postaction_s3_filekey?: string) — Tool to create a PDF file asynchronously with JSON data and template. Returns immediately with a transaction reference and makes an HTTP/HTTPS GET callback to webhook_url when the PDF is generated. Us - craftmypdf_create_pdf_parallel(merge?: boolean, requests: object[], merge_expiration?: integer) — Tool to create multiple PDF files in parallel from templates with JSON data. Processes multiple PDF generation requests concurrently for improved performance. Optionally merges all generated PDFs into - craftmypdf_get_account_info() — Tool to retrieve account information including subscription and usage details. Use when you need to check quota limits, template usage, or account creation date. - craftmypdf_get_pdf_info(url: string) — Tool to retrieve information about a PDF file including metadata, page count, and other properties. Use when you need to analyze PDF file structure or extract metadata without downloading the entire f - craftmypdf_list_templates(limit?: integer, offset?: integer, group_name?: string) — Tool to retrieve a paginated list of PDF templates. Use when you need to browse available templates before generating a PDF. - craftmypdf_list_transactions(limit?: integer, offset?: integer) — Tool to retrieve a paginated list of API transactions. Use when you need to view transaction history with pagination support. - craftmypdf_merge_pdfs(urls: string[], expiration?: integer, output_file?: string, cloud_storage?: integer, postaction_s3_bucket?: string, postaction_s3_filekey?: string) — Tool to merge multiple PDF files from URLs into a single PDF document. Use when you need to combine multiple PDF files into one consolidated document. The API fetches PDFs from the provided URLs and m - craftmypdf_query_template_usage(end_date?: string, start_date?: string, template_ids: string) — Tool to retrieve usage statistics for specified templates within a date range. Use when you need to track PDF generation counts and credit consumption for specific templates. - craftmypdf_update_pdf_fields(url: string, fields: object[], expiration?: integer, output_file?: string, cloud_storage?: integer) — Tool to update fillable fields in a PDF document such as text fields, checkboxes, and dropdowns. Use when you need to programmatically fill out PDF forms by updating field values. The PDF must contain ## Example prompts - "What can I do in Craftmypdf?" - "Show me a summary of my Craftmypdf account" ## Links Docs: https://mcp.ai/docs/mcps/craftmypdf Website: https://mcp.ai/mcps/craftmypdf