# PandaDoc — MCP server on mcp.ai > Connect your PandaDoc account and use 14 tools for documents straight from your AI agent. Connect with your own API key. PandaDoc offers document creation, e-signatures, and workflow automation, helping sales teams and businesses streamline proposals, contracts, and agreement processes. By: mcp.ai · official Page: https://mcp.ai/pandadoc ## Connect (MCP protocol) Remote MCP endpoint (HTTP, streamable): https://api.mcp.ai/p_pandadoc?ms=1787291400000 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/pandadoc/_endpoints # public; lists every endpoint Call: POST https://api.mcp.ai/api/pandadoc/ 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/pandadoc/skill.md Postman collection (v2.1): https://mcp.ai/pandadoc/postman.json ## Tools - pandadoc_create_document_attachment(file: object, document_id: string) — Creates and adds an attachment to a PandaDoc document. This tool allows you to attach downloadable files such as supplemental materials, Excel spreadsheets, or other content without embedding them dir - pandadoc_create_document_from_file(url?: string, file?: object, name: string, tags?: string[], owner?: object, recipients: object[], parse_form_fields?: boolean) — Creates a new document in PandaDoc by uploading a file (PDF, DOCX, or RTF). Converts existing documents into PandaDoc documents for processing, signing, and tracking. Either `file` or `url` must be pr - pandadoc_create_folder(name: string, parent_uuid?: string) — Creates a new folder in PandaDoc to organize documents. This action allows users to create a new folder with a specified name and optionally set a parent folder to create a nested folder structure. - pandadoc_create_or_update_contact(city?: string, email: string, phone?: string, state?: string, company?: string, country?: string, job_title?: string, last_name?: string, first_name?: string, postal_code?: string, street_address?: string) — This tool creates a new contact or updates an existing one in PandaDoc based on the email address. If a contact with the provided email exists, it will be updated; otherwise, a new contact will be cre - pandadoc_create_template(file?: object, name: string, tags?: string[], content?: object, description?: string) — This tool allows users to create a new template in PandaDoc from a PDF file or from scratch. It handles file upload validation, parameter checks, proper error handling, and authentication with the Pan - pandadoc_create_webhook(url: string, name: string, active?: boolean, payload?: string[], triggers: string[]) — Creates a new webhook subscription in PandaDoc to receive notifications about specific events. This action allows you to set up webhook notifications for various document-related events such as status - pandadoc_delete_contact(contact_id: string) — This tool allows you to delete a contact from your PandaDoc account. The action is permanent and cannot be undone. - pandadoc_delete_template(template_id: string) — This tool deletes a specific template from PandaDoc. Once a template is deleted, it cannot be recovered. This action is permanent and should be used with caution. - pandadoc_get_document_details(id: string) — Fetch detailed metadata for a specific PandaDoc document including recipients, fields/tokens values, pricing data, metadata, tags, and content-block names. Use this after discovering a document via li - pandadoc_get_template_details(template_id: string) — This tool retrieves detailed information about a specific template by its ID. The endpoint returns comprehensive template details including metadata, content details, and sharing settings. - pandadoc_list_contacts(email?: string) — List all contacts in your PandaDoc workspace. Returns all contacts with their details including email, name, company, and contact information. Optionally filter by exact email address. Note: The API r - pandadoc_list_document_folders(page?: integer, count?: integer, parent_uuid?: string) — This tool retrieves a list of all document folders in PandaDoc. It's a standalone action that doesn't require any external dependencies or resource IDs. The tool will return a list of folders containi - pandadoc_list_templates(q?: string, id?: string, tag?: string[], page?: integer, count?: integer, fields?: string[], shared?: boolean, deleted?: boolean, folder_uuid?: string) — This tool retrieves a list of all templates available in the PandaDoc account. It supports parameters to filter templates by name, shared status, deleted status, pagination, and tag filtering, and ret - pandadoc_move_document_to_folder(folder_id: string, document_id: string) — This tool allows users to move a document to a specific folder within their PandaDoc account. It performs a POST request to move the document to the specified folder. Both the document and the destina ## Example prompts - "What can I do in PandaDoc?" - "Show me a summary of my PandaDoc account" ## Links Docs: https://mcp.ai/docs/mcps/pandadoc Website: https://mcp.ai/mcps/pandadoc