pipedrive-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| LOG_LEVEL | No | debug, info, warn, error | info |
| SENTRY_DSN | No | Sentry DSN to enable error tracking (omit to disable) | |
| SENTRY_RELEASE | No | Sentry release tag | |
| SENTRY_ENVIRONMENT | No | Sentry environment tag | production |
| PIPEDRIVE_API_TOKEN | Yes | Your Pipedrive API token | |
| PIPEDRIVE_MAX_LIMIT | No | Maximum page size | 100 |
| PIPEDRIVE_DEFAULT_LIMIT | No | Default page size | 25 |
| PIPEDRIVE_COMPANY_DOMAIN | Yes | Your Pipedrive company domain (subdomain in your Pipedrive URL) | |
| PIPEDRIVE_ENABLE_WRITE_TOOLS | No | Set false to expose only read tools | true |
| PIPEDRIVE_FIELD_CACHE_TTL_MS | No | Field metadata cache TTL (5 min) | 300000 |
| PIPEDRIVE_REQUEST_TIMEOUT_MS | No | HTTP request timeout | 30000 |
| PIPEDRIVE_RATE_LIMIT_SEARCH_PER_2S | No | Search rate limit per 2s | 4 |
| PIPEDRIVE_RATE_LIMIT_GENERAL_PER_2S | No | General rate limit per 2s | 8 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| pipedrive_deals_listB | List deals with filters and pagination. Returns compact deal summaries with IDs, titles, stages, values, and linked entity IDs. |
| pipedrive_deals_getA | Get a single deal by ID with full details including resolved custom fields. |
| pipedrive_deals_searchB | Search deals by term. Returns matching deals with relevance scoring. |
| pipedrive_deals_summaryB | Get a Claude-friendly deal or pipeline snapshot. Pass deal_id for a single deal summary with optional activities/notes/products. Omit deal_id for a pipeline overview with stage counts. |
| pipedrive_deals_move_stageC | Move a deal to a different stage (and optionally pipeline). |
| pipedrive_deals_createC | Create a new deal. Supports custom fields by name or key, and the native Label field via label_ids (IDs or label names). |
| pipedrive_deals_updateC | Update an existing deal. Supports custom fields by name or key, and the native Label field via label_ids (IDs or label names). |
| pipedrive_deals_deleteA | Delete a deal. Requires confirm: "DELETE". Supports dry_run for preview. |
| pipedrive_persons_listC | List persons with filters and pagination. |
| pipedrive_persons_getA | Get a single person by ID with full details including resolved custom fields. |
| pipedrive_persons_searchC | Search persons by name, email, phone, or custom fields. |
| pipedrive_persons_createC | Create a new person. Supports custom fields by name or key, and the native Label field via label_ids (IDs or label names). |
| pipedrive_persons_updateC | Update an existing person. Supports custom fields by name or key, and the native Label field via label_ids (IDs or label names). |
| pipedrive_persons_deleteA | Delete a person. Requires confirm: "DELETE". Supports dry_run. |
| pipedrive_persons_mergeA | Merge two persons. Source is merged into target. Requires confirm: "MERGE". Supports dry_run. |
| pipedrive_organizations_listC | List organizations with filters and pagination. |
| pipedrive_organizations_getB | Get a single organization by ID with full details including resolved custom fields. |
| pipedrive_organizations_searchC | Search organizations by name, address, or custom fields. |
| pipedrive_organizations_createB | Create a new organization. Supports custom fields by name or key, and the native Label field via label_ids (IDs or label names). |
| pipedrive_organizations_updateC | Update an existing organization. Supports custom fields by name or key, and the native Label field via label_ids (IDs or label names). |
| pipedrive_organizations_deleteB | Delete an organization. Requires confirm: "DELETE". Supports dry_run. |
| pipedrive_organizations_mergeB | Merge two organizations. Source is merged into target. Requires confirm: "MERGE". Supports dry_run. |
| pipedrive_activities_listC | List activities with filters and pagination. |
| pipedrive_activities_getB | Get a single activity by ID. |
| pipedrive_activities_createC | Create a new activity (call, meeting, task, etc). The note field, if supplied, is plain HTML, passed directly with no CDATA wrapper. |
| pipedrive_activities_updateC | Update an existing activity. The note field, if supplied, is plain HTML, passed directly with no CDATA wrapper. |
| pipedrive_activities_mark_doneC | Mark an activity as done or undone. |
| pipedrive_activities_deleteB | Delete an activity. Requires confirm: "DELETE". Supports dry_run. |
| pipedrive_activity_types_listA | List the activity type key_strings configured for this workspace. Call this before creating an activity if you aren't sure which 'type' values are valid. |
| pipedrive_notes_listB | List notes, optionally scoped to a deal, person, org, or lead. |
| pipedrive_notes_getA | Get a single note by ID. |
| pipedrive_notes_createC | Create a note attached to a deal, person, org, or lead. content_html is plain HTML, passed directly with no CDATA wrapper. |
| pipedrive_notes_updateC | Update a note's content and pin flags. content_html is plain HTML, passed directly with no CDATA wrapper. |
| pipedrive_notes_deleteC | Delete a note. Requires confirm: "DELETE". Supports dry_run. |
| pipedrive_note_comments_listC | List comments on a note. |
| pipedrive_note_comments_getB | Get a single comment by UUID on a note. |
| pipedrive_note_comments_createC | Add a comment to a note. content_html is plain HTML, passed directly with no CDATA wrapper. |
| pipedrive_note_comments_updateB | Update a comment on a note. content_html is plain HTML, passed directly with no CDATA wrapper. |
| pipedrive_note_comments_deleteB | Delete a comment from a note. Requires confirm: "DELETE". Supports dry_run. |
| pipedrive_pipelines_listC | List all pipelines. |
| pipedrive_pipelines_getB | Get a single pipeline by ID. |
| pipedrive_stages_listA | List stages, optionally filtered by pipeline. |
| pipedrive_stages_getA | Get a single stage by ID. |
| pipedrive_custom_fields_listA | List field metadata for an entity type. Returns field keys, names, types, and options for enum/set fields. Use this to discover available custom fields before using custom_fields_by_name. |
| pipedrive_users_listC | List all Pipedrive users in the account. |
| pipedrive_users_getA | Get a single user by ID. |
| pipedrive_users_permissionsB | Get permissions for a specific user. |
| pipedrive_filters_listA | List all saved filters, optionally by entity type. |
| pipedrive_filters_getA | Get a single filter definition by ID. |
| pipedrive_filters_resultsB | Run a saved filter and return matching entities with pagination. |
| pipedrive_products_listC | List products with filters and pagination. |
| pipedrive_products_getB | Get a single product by ID. |
| pipedrive_products_createC | Create a new product. |
| pipedrive_products_updateC | Update an existing product. |
| pipedrive_products_deleteB | Delete a product. Requires confirm: "DELETE". Supports dry_run. |
| pipedrive_products_searchC | Search products by name or code. |
| pipedrive_deal_products_listB | List products attached to a deal. |
| pipedrive_deal_products_addC | Attach a product to a deal with price/quantity. |
| pipedrive_deal_products_updateC | Update a product attachment on a deal. |
| pipedrive_deal_products_deleteB | Remove a product from a deal. Requires confirm: "DELETE". Supports dry_run. |
| pipedrive_product_variations_listC | List a product's variations (id, name, prices). |
| pipedrive_product_variations_createC | Add a variation to a product. |
| pipedrive_product_variations_updateC | Update a product variation's name or prices. |
| pipedrive_product_variations_deleteB | Delete a product variation. Requires confirm: "DELETE". Supports dry_run. |
| pipedrive_product_deals_listB | List deals a product is attached to, optionally filtered by status. |
| pipedrive_files_listC | List files, optionally scoped to an entity. |
| pipedrive_files_getB | Get file metadata and optional download URL. |
| pipedrive_files_uploadC | Upload a base64-encoded file and attach to an entity. |
| pipedrive_leads_listB | List leads with filters and pagination. |
| pipedrive_leads_getA | Get a single lead by ID. |
| pipedrive_leads_createB | Create a new lead. Requires at least person_id or organization_id. |
| pipedrive_leads_updateC | Update an existing lead. |
| pipedrive_leads_deleteB | Delete a lead. Requires confirm: "DELETE". Supports dry_run. |
| pipedrive_leads_searchC | Search leads by term (uses v2 search API). |
| pipedrive_webhooks_listB | List all webhooks. |
| pipedrive_webhooks_createB | Create a webhook subscription. Requires confirm: "YES". Supports dry_run. |
| pipedrive_webhooks_deleteA | Delete a webhook. Requires confirm: "YES". Supports dry_run. |
| pipedrive_mail_threads_listB | List mail threads, optionally filtered by folder (inbox, drafts, sent, archive). |
| pipedrive_mail_threads_getA | Get a single mail thread by ID with full details. |
| pipedrive_mail_thread_messages_listC | List messages within a mail thread. Use include_body for full content. |
| pipedrive_mail_messages_getB | Get a single mail message by ID. Set include_body to true for full content. |
| pipedrive_mail_threads_updateC | Update a mail thread: link to deal/lead, mark read/unread, archive/unarchive, share. |
| pipedrive_mail_threads_deleteA | Delete a mail thread. Requires confirm: "DELETE". Supports dry_run. |
| pipedrive_deal_mail_messages_listC | List mail messages linked to a deal. |
| pipedrive_person_mail_messages_listC | List mail messages linked to a person. |
| pipedrive_meA | Show the current Pipedrive user (API token owner). Pass as_user to resolve a different team member by name or email. |
| pipedrive_my_open_dealsA | List open deals owned by the current user (or as_user). Sorted by most recently updated. |
| pipedrive_my_overdue_activitiesA | Show activities that are past due and not yet done for the current user (or as_user). |
| pipedrive_my_upcoming_activitiesA | Show upcoming activities for the next N days (default 7) for the current user (or as_user). |
| pipedrive_recently_updatedB | Show deals, persons, or organizations updated in the last N days (default 7). Optionally filter by user. |
| pipedrive_my_pipeline_summaryB | Pipeline snapshot for the current user (or as_user) showing deal counts and values by stage. |
| pipedrive_stale_dealsA | Find open deals that haven't been updated in N days (default 30). Optionally filter by user or pipeline. |
| pipedrive_people_needing_followupA | Find contacts owned by the current user (or as_user) that have no next activity scheduled. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 93 tools
While most tools target distinct resources and actions, the set includes several overlapping convenience wrappers (e.g., pipedrive_deals_summary vs pipedrive_my_pipeline_summary, pipedrive_my_open_deals vs pipedrive_deals_list, and the similarly named pipedrive_product_deals_list vs pipedrive_deal_products_list). Descriptions help clarify intent, but an agent still faces multiple ambiguous pairs.
All tools use the pipedrive_ prefix and snake_case with a generally consistent entity_action pattern. Minor deviations exist (e.g., reversed entity order in pipedrive_product_deals_list vs pipedrive_deal_products_list; singular pipedrive_mail_thread_messages_list vs plural pipedrive_mail_threads_list), but naming is largely predictable.
93 tools is an extreme mismatch for a single MCP server; even for a broad CRM like Pipedrive, this far exceeds the well-scoped 3-15 range. Many tools are convenience wrappers that could be consolidated or parameterized to reduce surface area.
Core CRM entities (deals, persons, orgs, leads, activities, notes, products, mail) have near-complete CRUD/search coverage with useful lifecycle operations like merge, move_stage, and mark_done. Gaps remain for filter create/update/delete, webhook update, and pipeline/stage management, but these are relatively minor for agent workflows.