- Built from scratch: apollo, chargebee, datadog, greenhouse, lever, loom, pandadoc, salesloft, sendgrid, supabase, typeform, webflow, zoho-crm, twilio, reonomy - TSC fixes: brevo, google-console, housecall-pro, meta-ads, rippling, bamboohr, close, fieldedge, freshdesk, helpscout, toast, touchbistro, hubspot, notion, quickbooks, airtable, gusto, intercom, linear, monday, salesforce, shopify, square, wave, xero - Entry points added: close, touchbistro - All 65 active servers compile with 0 TypeScript errors - 4 specialty servers skipped (competitor-research, compliance-grc, n8n-apps, product-analytics)
171 lines
5.3 KiB
Markdown
171 lines
5.3 KiB
Markdown
# PandaDoc MCP Server
|
|
|
|
MCP server for PandaDoc document automation - documents, templates, contacts, fields, content library, webhooks, workspaces.
|
|
|
|
## Features
|
|
|
|
- 📄 **Document Management** - Create, send, track documents with e-signatures
|
|
- 📋 **Templates** - Build reusable document templates
|
|
- 👥 **Contact Management** - Organize recipients and contacts
|
|
- 📝 **Field Management** - Pre-fill and manage document fields
|
|
- 📚 **Content Library** - Reusable blocks, pricing tables, media
|
|
- 🔔 **Webhooks** - Real-time event notifications
|
|
- 🏢 **Workspace Management** - Multi-workspace support
|
|
|
|
## Installation
|
|
|
|
```bash
|
|
npm install
|
|
npm run build
|
|
```
|
|
|
|
## Configuration
|
|
|
|
Set your PandaDoc API key:
|
|
|
|
```bash
|
|
export PANDADOC_API_KEY='your_api_key_here'
|
|
```
|
|
|
|
## Usage
|
|
|
|
Run the server:
|
|
|
|
```bash
|
|
npm start
|
|
# or
|
|
pandadoc-mcp-server
|
|
```
|
|
|
|
Add to Claude Desktop config:
|
|
|
|
```json
|
|
{
|
|
"mcpServers": {
|
|
"pandadoc": {
|
|
"command": "node",
|
|
"args": ["/path/to/pandadoc/dist/index.js"],
|
|
"env": {
|
|
"PANDADOC_API_KEY": "your_api_key_here"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
## Available Tools
|
|
|
|
### Document Tools (7)
|
|
- `list_documents` - List documents with status/folder filtering, pagination
|
|
- `get_document` - Get document details with recipients, fields, pricing
|
|
- `create_document` - Create document from template or scratch
|
|
- `update_document` - Update draft document name, recipients, fields
|
|
- `send_document` - Send document to recipients via email
|
|
- `delete_document` - Permanently delete document
|
|
- `download_document` - Get PDF download URL for completed docs
|
|
|
|
### Template Tools (5)
|
|
- `list_templates` - List templates with folder filtering
|
|
- `get_template` - Get template details, fields, roles
|
|
- `create_template` - Create reusable document template
|
|
- `update_template` - Update template name, description, tags
|
|
- `delete_template` - Delete template (doesn't affect existing docs)
|
|
|
|
### Contact Tools (5)
|
|
- `list_contacts` - List contacts with email filtering
|
|
- `get_contact` - Get contact details and address
|
|
- `create_contact` - Create new contact
|
|
- `update_contact` - Update contact information
|
|
- `delete_contact` - Delete contact
|
|
|
|
### Field Tools (2)
|
|
- `get_document_fields` - Get all document fields with types/values
|
|
- `update_document_fields` - Pre-fill document field values
|
|
|
|
### Content Library Tools (4)
|
|
- `list_content_library` - List reusable content items by type
|
|
- `get_content_library_item` - Get content item details
|
|
- `create_content_library_item` - Create reusable content block
|
|
- `delete_content_library_item` - Delete content item
|
|
|
|
### Webhook Tools (4)
|
|
- `list_webhooks` - List all configured webhooks
|
|
- `create_webhook` - Create webhook for document events
|
|
- `update_webhook` - Update webhook URL, events, status
|
|
- `delete_webhook` - Delete webhook
|
|
|
|
### Workspace Tools (2)
|
|
- `list_workspaces` - List accessible workspaces
|
|
- `get_workspace` - Get workspace details and settings
|
|
|
|
**Total: 29 tools**
|
|
|
|
## API Coverage
|
|
|
|
### Core Entities
|
|
- ✅ Documents (list, get, create, update, send, delete, download)
|
|
- ✅ Templates (list, get, create, update, delete)
|
|
- ✅ Contacts (list, get, create, update, delete)
|
|
- ✅ Document Fields (get, update)
|
|
- ✅ Content Library (list, get, create, delete)
|
|
- ✅ Webhooks (list, create, update, delete)
|
|
- ✅ Workspaces (list, get)
|
|
|
|
### Features
|
|
- ✅ Pagination on all list operations
|
|
- ✅ Document lifecycle (draft → sent → completed)
|
|
- ✅ Template-based document creation
|
|
- ✅ Field pre-filling and validation
|
|
- ✅ Multi-recipient workflows
|
|
- ✅ Real-time webhook events
|
|
- ✅ Content reusability
|
|
- ✅ Rate limiting (300 req/min)
|
|
- ✅ Error handling
|
|
|
|
### Document Events (Webhooks)
|
|
- ✅ document_created
|
|
- ✅ document_sent
|
|
- ✅ document_viewed
|
|
- ✅ document_completed
|
|
- ✅ document_declined
|
|
- ✅ recipient_completed
|
|
|
|
## Rate Limits
|
|
|
|
- Standard: 300 requests/minute
|
|
- Automatic rate limit handling with backoff
|
|
- Rate limit headers tracked and respected
|
|
|
|
## Tool Naming Conventions
|
|
|
|
- `list_*` - Paginated collections (documents, templates, contacts, content_library, webhooks, workspaces)
|
|
- `get_*` - Single resource retrieval (document, template, contact, content_library_item, workspace, document_fields)
|
|
- `create_*` - Resource creation (document, template, contact, content_library_item, webhook)
|
|
- `update_*` - Resource modification (document, template, contact, document_fields, webhook)
|
|
- `delete_*` - Resource deletion (document, template, contact, content_library_item, webhook)
|
|
- `send_*` - Action operations (send_document)
|
|
- `download_*` - Download operations (download_document)
|
|
|
|
## Architecture
|
|
|
|
```
|
|
src/
|
|
├── index.ts # MCP server entry point
|
|
├── client/
|
|
│ └── pandadoc-client.ts # API client with auth & rate limiting
|
|
├── tools/
|
|
│ ├── document-tools.ts # Document operations (7 tools)
|
|
│ ├── template-tools.ts # Template management (5 tools)
|
|
│ ├── contact-tools.ts # Contact management (5 tools)
|
|
│ ├── field-tools.ts # Field operations (2 tools)
|
|
│ ├── content-library-tools.ts # Content library (4 tools)
|
|
│ ├── webhook-tools.ts # Webhook management (4 tools)
|
|
│ └── workspace-tools.ts # Workspace operations (2 tools)
|
|
└── types/
|
|
└── index.ts # TypeScript interfaces
|
|
```
|
|
|
|
## License
|
|
|
|
MIT
|