Server data from the Official MCP Registry
MCP server for Pipedrive CRM. 155 tools for deals, persons, organizations, activities, and more.
MCP server for Pipedrive CRM. 155 tools for deals, persons, organizations, activities, and more.
Valid MCP server (1 strong, 1 medium validity signals). No known CVEs in dependencies. Package registry verified. Imported from the Official MCP Registry.
5 files analyzed ยท 1 issue found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Set these up before or after installing:
Environment variable: PIPEDRIVE_API_KEY
Environment variable: PIPEDRIVE_ENABLE_DESTRUCTIVE
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-ckalima-pipedrive-mcp-server": {
"env": {
"PIPEDRIVE_API_KEY": "your-pipedrive-api-key-here",
"PIPEDRIVE_ENABLE_DESTRUCTIVE": "your-pipedrive-enable-destructive-here"
},
"args": [
"-y",
"@ckalima/pipedrive-mcp-server"
],
"command": "npx"
}
}
}From the project's GitHub README.
An MCP (Model Context Protocol) server for Pipedrive CRM integration with Claude Code and Claude Desktop. Query, create, and update CRM data directly from your AI assistant.
docs/api/openapi-v2.yaml) in tests/contract/, so the v2 tools can't silently drift from the documented API.scripts/smoke-coverage.ts), with only API-unseedable surfaces (e.g. mail threads, project templates) left to manual checks. Coverage includes plan-gated endpoints such as Growth+ deal installments (scripts/smoke-installments.ts). Key write smokes (e.g. the task is_done flag) assert the field value actually changed on the wire, not just a 200.PIPEDRIVE_ENABLE_DESTRUCTIVE=true, so the server is read-and-create only out of the box. Every tool also carries MCP annotations (readOnlyHint/destructiveHint/idempotentHint) so policy-aware clients can tell reads from writes from deletes.Honest limitations. Transport is STDIO only today (a Streamable HTTP flag is planned), and auth is via a Pipedrive API key, which matches the local/self-hosted tier this server targets. There is no hosted OAuth offering yet.
Add to your .mcp.json file:
{
"mcpServers": {
"pipedrive": {
"command": "npx",
"args": ["-y", "@ckalima/pipedrive-mcp-server"],
"env": {
"PIPEDRIVE_API_KEY": "your-40-character-api-key"
}
}
}
}
Package name: the supported package is the scoped
@ckalima/pipedrive-mcp-server. If you arrived from an older snippet that referenced the unscopedpipedrive-mcp-server, update your config to the scoped name above โ the unscoped name is a different, unrelated package.
You can also start it directly to verify your setup:
npx -y @ckalima/pipedrive-mcp-server
Or set the environment variable:
export PIPEDRIVE_API_KEY="your-40-character-api-key"
| Variable | Required | Default | Description |
|---|---|---|---|
PIPEDRIVE_API_KEY | Yes | - | Your 40-character Pipedrive API token. |
PIPEDRIVE_ENABLE_DESTRUCTIVE | No | false | Set to true to enable destructive tools (๐ in the table below: deletes, conversions, and other irreversible writes). Off by default so the server is read-and-create only until you opt in. |
To enable destructive tools, add "PIPEDRIVE_ENABLE_DESTRUCTIVE": "true" to the env block in your .mcp.json (alongside PIPEDRIVE_API_KEY), or export PIPEDRIVE_ENABLE_DESTRUCTIVE=true. When unset, every ๐ tool returns a DESTRUCTIVE_DISABLED error instead of acting.
Once configured, Claude can access your Pipedrive data:
155 tools. ๐ destructive (gated by PIPEDRIVE_ENABLE_DESTRUCTIVE=true, off by default) ยท โญ requires a Growth+ plan.
This section is generated by npm run gen:docs from the live tool registry. Do not edit by hand - CI fails on drift.
| Tool | Description |
|---|---|
pipedrive_list_deals | List deals from Pipedrive with optional filtering by owner, person, organization, pipeline, stage, or status. Returns paginated results. |
pipedrive_get_deal | Get detailed information about a specific deal by ID, including all standard and custom fields. |
pipedrive_create_deal | Create a new deal in Pipedrive. Only title is required; all other fields are optional. |
pipedrive_update_deal | Update an existing deal in Pipedrive. Specify the deal ID and any fields to update. |
pipedrive_search_deals | Search for deals by text in title. Supports fuzzy matching by default. |
pipedrive_delete_deal ๐ | Delete a deal. The deal will be marked as deleted and permanently removed after 30 days. |
pipedrive_list_deal_followers | List all followers for a deal. |
pipedrive_add_deal_follower | Add a follower to a deal. |
pipedrive_delete_deal_follower ๐ | Remove a follower from a deal. |
pipedrive_get_deal_followers_changelog | Get the followers changelog for a deal. |
pipedrive_list_deal_products | List line-item products attached to a deal. Returns paginated results. |
pipedrive_add_deal_product | Attach a single product as a line item to a deal. |
pipedrive_update_deal_product | Update a line-item product attached to a deal. All body fields optional. |
pipedrive_delete_deal_product ๐ | Remove a line-item product from a deal. |
pipedrive_bulk_add_deal_products | Bulk-add up to 100 line-item products to a deal in one request. |
pipedrive_list_deal_discounts | List all additional discounts applied to a deal. |
pipedrive_add_deal_discount | Add an additional discount to a deal. |
pipedrive_update_deal_discount | Update an additional discount on a deal. All fields except IDs are optional. |
pipedrive_delete_deal_discount ๐ | Delete an additional discount from a deal. |
pipedrive_list_deal_installments โญ | List installments across one or more deals. Requires deal_ids. Growth+ plan required. |
pipedrive_add_deal_installment โญ | Add an installment (payment schedule entry) to a deal. Growth+ plan required; the deal must have at least one one-time product and no recurring products. |
pipedrive_update_deal_installment โญ | Update an installment on a deal. Growth+ plan required; all body fields optional. |
pipedrive_delete_deal_installment ๐ โญ | Delete an installment from a deal. Growth+ plan required. |
pipedrive_list_archived_deals | List archived deals with the same filtering as the active deals list (owner, person, organization, pipeline, stage, status). Returns paginated results. |
pipedrive_convert_deal_to_lead ๐ | Convert a deal to a lead (async job). DESTRUCTIVE: a successful conversion marks the source deal as deleted. Returns a conversion_id; the conversion runs asynchronously, so you MUST poll pipedrive_get_deal_conversion_status with the conversion_id until a terminal status. Requires PIPEDRIVE_ENABLE_DESTRUCTIVE=true. |
pipedrive_get_deal_conversion_status | Get the status of a deal-to-lead conversion job. Status contract: 'completed' (terminal, carries lead_id), 'failed'/'rejected' (terminal, stop polling, no lead produced), 'not_started'/'running' (in-progress, re-poll). Only 'completed' carries lead_id, and conversion status is purged after a few days, so a 404 returned after a prior valid status means the status was purged (terminal stop-polling signal, not a transient error). Use a bounded poll budget (e.g. up to ~6 attempts with short backoff), not an unbounded loop. |
| Tool | Description |
|---|---|
pipedrive_list_persons | List persons (contacts) from Pipedrive with optional filtering by owner, organization, or first letter of name. |
pipedrive_get_person | Get detailed information about a specific person by ID. |
pipedrive_create_person | Create a new person (contact) in Pipedrive. Only name is required. |
pipedrive_update_person | Update an existing person in Pipedrive. |
pipedrive_search_persons | Search for persons by name, email, or phone number. |
pipedrive_delete_person ๐ | Delete a person. The person will be marked as deleted and permanently removed after 30 days. |
pipedrive_list_person_followers | List all followers for a person. |
pipedrive_add_person_follower | Add a follower to a person. |
pipedrive_delete_person_follower ๐ | Remove a follower from a person. |
pipedrive_get_person_followers_changelog | Get the followers changelog for a person. |
pipedrive_get_person_picture | Get the picture for a person (read-only; returns picture metadata and sized image URLs). Returns an error if the person has no picture. |
| Tool | Description |
|---|---|
pipedrive_list_organizations | List organizations from Pipedrive with optional filtering by owner or first letter of name. |
pipedrive_get_organization | Get detailed information about a specific organization by ID. |
pipedrive_create_organization | Create a new organization in Pipedrive. Only name is required. |
pipedrive_update_organization | Update an existing organization in Pipedrive. |
pipedrive_search_organizations | Search for organizations by name or address. |
pipedrive_delete_organization ๐ | Delete an organization. The organization will be marked as deleted and permanently removed after 30 days. |
pipedrive_list_organization_followers | List all followers for an organization. |
pipedrive_add_organization_follower | Add a follower to an organization. |
pipedrive_delete_organization_follower ๐ | Remove a follower from an organization. |
pipedrive_get_organization_followers_changelog | Get the followers changelog for an organization. |
| Tool | Description |
|---|---|
pipedrive_list_activities | List activities from Pipedrive with optional filtering by owner, deal, person, organization, type, or completion status. |
pipedrive_get_activity | Get detailed information about a specific activity by ID. |
pipedrive_create_activity | Create a new activity in Pipedrive. Subject and type are required. |
pipedrive_update_activity | Update an existing activity in Pipedrive. Use this to mark activities as done. |
pipedrive_delete_activity ๐ | Delete an activity. |
| Tool | Description |
|---|---|
pipedrive_list_notes | List notes from Pipedrive with optional filtering by deal, person, organization, or lead. |
pipedrive_get_note | Get detailed information about a specific note by ID. |
pipedrive_create_note | Create a new note in Pipedrive. Content is required. Link to a deal, person, organization, or lead. |
pipedrive_update_note | Update an existing note in Pipedrive. |
pipedrive_delete_note ๐ | Delete a note. |
| Tool | Description |
|---|---|
pipedrive_list_leads | List active (non-archived) leads from Pipedrive with optional filtering by owner, person, or organization. |
pipedrive_list_archived_leads | List archived leads from Pipedrive with optional filtering by owner, person, or organization. |
pipedrive_get_lead | Get detailed information about a specific lead by UUID. |
pipedrive_create_lead | Create a new lead in Pipedrive. Title is required; link to at least one of person_id or organization_id. |
pipedrive_update_lead | Update an existing lead in Pipedrive. |
pipedrive_search_leads | Search for leads in Pipedrive by title or associated contacts. |
pipedrive_delete_lead ๐ | Delete a lead. Requires PIPEDRIVE_ENABLE_DESTRUCTIVE=true environment variable. |
pipedrive_convert_lead_to_deal | Convert a lead into a deal (Pipedrive v2). The conversion runs asynchronously; this tool polls until it completes (typically under 5s) and returns the new deal ID. If it is still running after ~30s, it returns the conversion_id and status for manual follow-up. |
pipedrive_get_lead_conversion_status | Get the status of an async lead-to-deal conversion by conversion ID (Pipedrive v2 GET /leads/{id}/convert/status/{conversion_id}). |
| Tool | Description |
|---|---|
pipedrive_list_projects | List projects from Pipedrive with optional filtering by board, phase, or status. Returns paginated results. (Requires the Projects add-on; Projects API is in public beta.) |
pipedrive_get_project | Get detailed information about a specific project by ID. (Requires the Projects add-on; Projects API is in public beta.) |
pipedrive_create_project | Create a new project in Pipedrive. Requires title, board_id, and phase_id. (Requires the Projects add-on; Projects API is in public beta.) |
pipedrive_update_project | Update an existing project in Pipedrive. (Requires the Projects add-on; Projects API is in public beta.) |
pipedrive_delete_project ๐ | Delete a project. Requires PIPEDRIVE_ENABLE_DESTRUCTIVE=true environment variable. (Requires the Projects add-on; Projects API is in public beta.) |
pipedrive_search_projects | Search for projects in Pipedrive by title. (Requires the Projects add-on; Projects API is in public beta.) |
pipedrive_archive_project | Archive a project by setting its status to archived. (Requires the Projects add-on; Projects API is in public beta.) |
pipedrive_list_project_tasks | List tasks for a project you already have the ID for โ pass only id (the project ID). For broader task queries use pipedrive_list_tasks. (Projects add-on; Projects API in public beta.) |
pipedrive_list_project_templates | List all project templates available in Pipedrive. Returns paginated results. |
pipedrive_get_project_template | Get detailed information about a specific project template by ID. |
pipedrive_list_archived_projects | List archived projects from Pipedrive with optional filtering by filter, phase, or status. (Projects add-on; Projects API in public beta.) |
pipedrive_get_project_permitted_users | Get the list of user IDs that have permission to access a project. Returns an array of integer user IDs. (Projects add-on; Projects API in public beta.) |
pipedrive_get_project_changelog | Get the changelog for a project, showing what changed, when, and by whom. Returns paginated entries with actor_user_id, new_values, and old_values. (Projects add-on; Projects API in public beta.) |
| Tool | Description |
|---|---|
pipedrive_list_products | List products from Pipedrive with optional filtering by owner, IDs, or filter. |
pipedrive_get_product | Get detailed information about a specific product by ID. |
pipedrive_search_products | Search for products by name, code, or custom fields. |
pipedrive_create_product | Create a new product in Pipedrive. Only name is required. |
pipedrive_update_product | Update an existing product in Pipedrive. |
pipedrive_delete_product ๐ | Delete a product. The product will be marked as deleted and permanently removed after 30 days. |
pipedrive_list_product_variations | List all variations for a product. |
pipedrive_add_product_variation | Add a variation to a product. |
pipedrive_update_product_variation | Update an existing product variation. |
pipedrive_delete_product_variation ๐ | Delete a product variation. |
pipedrive_list_product_followers | List all followers for a product. |
pipedrive_add_product_follower | Add a follower to a product. |
pipedrive_delete_product_follower ๐ | Remove a follower from a product. |
pipedrive_get_product_followers_changelog | Get the followers changelog for a product. |
pipedrive_get_product_image | Get the image of a product (returns a single image with a public URL valid for 7 days). |
pipedrive_delete_product_image ๐ | Delete the image of a product. |
pipedrive_upload_product_image | Upload an image for a product. Provide the image via EITHER file_path OR base64_data (exactly one required). Supports png, jpeg, gif, and webp. Note: file_path is read by the SERVER process via the filesystem โ only use it when the server shares your filesystem (e.g. a local CLI); otherwise use base64_data, which is transport-safe. |
pipedrive_update_product_image | Update (replace) the image of a product. Provide the image via EITHER file_path OR base64_data (exactly one required). Supports png, jpeg, gif, and webp. Note: file_path is read by the SERVER process via the filesystem โ only use it when the server shares your filesystem (e.g. a local CLI); otherwise use base64_data, which is transport-safe. |
| Tool | Description |
|---|---|
pipedrive_list_tasks | General task query across all projects, with optional project_id, assignee_id, done/milestone, and parent filters. Use for anything beyond a single project's full task list. (Projects add-on; Projects API in public beta.) |
pipedrive_get_task | Get detailed information about a specific task by ID. (Projects add-on; Projects API in public beta.) |
pipedrive_create_task | Create a new task in a project. title and project_id are required. Use boolean is_done/is_milestone (same field names as the GET response); a milestone task must have a due_date. (Projects add-on; Projects API in public beta.) |
pipedrive_update_task | Update an existing task. Only id is required; all other fields are optional. Use boolean is_done/is_milestone (same field names as the GET response); a milestone task must have a due_date. (Projects add-on; Projects API in public beta.) |
pipedrive_delete_task ๐ | Delete a task. If the task has subtasks, those will also be deleted. Requires PIPEDRIVE_ENABLE_DESTRUCTIVE=true. (Projects add-on; Projects API in public beta.) |
| Tool | Description |
|---|---|
pipedrive_list_boards | List all project boards. Returns the complete list (no pagination โ the boards endpoint returns all records at once). (Projects add-on; Projects API in public beta.) |
pipedrive_get_board | Get detailed information about a specific project board by ID. (Projects add-on; Projects API in public beta.) |
pipedrive_create_board | Create a new project board. name is required. (Projects add-on; Projects API in public beta.) |
pipedrive_update_board | Update an existing project board. Only id is required; all other fields are optional. (Projects add-on; Projects API in public beta.) |
pipedrive_delete_board ๐ | Delete a project board. Requires PIPEDRIVE_ENABLE_DESTRUCTIVE=true. (Projects add-on; Projects API in public beta.) |
pipedrive_list_phases | List all phases for a project board. board_id is required. Returns the complete list (no pagination โ the phases endpoint returns all records for a board at once). (Projects add-on; Projects API in public beta.) |
pipedrive_get_phase | Get detailed information about a specific project phase by ID. (Projects add-on; Projects API in public beta.) |
pipedrive_create_phase | Create a new project phase. name and board_id are required. (Projects add-on; Projects API in public beta.) |
pipedrive_update_phase | Update an existing project phase. Only id is required; all other fields are optional. Set board_id to move this phase to a different board. (Projects add-on; Projects API in public beta.) |
pipedrive_delete_phase ๐ | Delete a project phase. Requires PIPEDRIVE_ENABLE_DESTRUCTIVE=true. (Projects add-on; Projects API in public beta.) |
| Tool | Description |
|---|---|
pipedrive_get_person_emails | Get email messages linked to a person (company-wide, all users' emails). Returns metadata for emails from any user's mailbox that are linked to this person. Note: To get full message body, use pipedrive_get_mail_message, but only for emails in YOUR mailbox. |
pipedrive_get_deal_emails | Get email messages linked to a deal (company-wide, all users' emails). Returns metadata for emails from any user's mailbox that are linked to this deal. Note: To get full message body, use pipedrive_get_mail_message, but only for emails in YOUR mailbox. |
pipedrive_list_mail_threads | List mail threads from YOUR mailbox only (authenticated user). Other users' threads are not accessible. Use folder parameter to filter by inbox, drafts, sent, or archive. |
pipedrive_get_mail_thread | Get a mail thread with messages. Access depends on visibility settings - threads visible within deals/persons you can access should work. Returns 404 if the thread isn't accessible to you. |
pipedrive_get_mail_message | Get full email message with body. Access depends on visibility settings - messages linked to deals/persons you can access should work, even if sent by other users. |
| Tool | Description |
|---|---|
pipedrive_list_organization_fields | List all organization field definitions, including custom fields. Use this to map 40-character field keys to human-readable names. |
pipedrive_list_deal_fields | List all deal field definitions, including custom fields. Essential for understanding deal data structure. |
pipedrive_list_person_fields | List all person field definitions, including custom fields. Use to understand contact data structure. |
pipedrive_list_product_fields | List all product field definitions, including custom fields. |
pipedrive_list_project_fields | List all project field definitions, including custom fields. (Projects add-on; Projects API in public beta.) |
pipedrive_get_field | Get details of a specific field by its key. Useful for looking up what a 40-character hash field key means. |
pipedrive_create_deal_field | Create a deal custom field. field_name and field_type are required. For enum/set types, options is required. The response data.field_code is the 40-char hash you must keep to update or delete the field later. |
pipedrive_update_deal_field | Update a deal custom field by field_code. field_type and field_code cannot be changed. |
pipedrive_delete_deal_field ๐ | Delete a deal custom field by field_code. Requires PIPEDRIVE_ENABLE_DESTRUCTIVE=true. |
pipedrive_update_deal_field_options | Bulk-update option labels of a deal enum/set field. Atomic: the whole request fails if any option ID does not exist. |
pipedrive_delete_deal_field_options ๐ | Bulk-delete options of a deal enum/set field. Atomic: fails if any ID does not exist. Requires PIPEDRIVE_ENABLE_DESTRUCTIVE=true. |
pipedrive_create_person_field | Create a person custom field. field_name and field_type are required. For enum/set types, options is required. The response data.field_code is the 40-char hash to keep for later updates. |
pipedrive_update_person_field | Update a person custom field by field_code. field_type and field_code cannot be changed. |
pipedrive_delete_person_field ๐ | Delete a person custom field by field_code. Requires PIPEDRIVE_ENABLE_DESTRUCTIVE=true. |
pipedrive_update_person_field_options | Bulk-update option labels of a person enum/set field. Atomic: the whole request fails if any option ID does not exist. |
pipedrive_delete_person_field_options ๐ | Bulk-delete options of a person enum/set field. Atomic: fails if any ID does not exist. Requires PIPEDRIVE_ENABLE_DESTRUCTIVE=true. |
pipedrive_create_organization_field | Create an organization custom field. field_name and field_type are required. For enum/set types, options is required. The response data.field_code is the 40-char hash to keep for later updates. |
pipedrive_update_organization_field | Update an organization custom field by field_code. field_type and field_code cannot be changed. |
pipedrive_delete_organization_field ๐ | Delete an organization custom field by field_code. Requires PIPEDRIVE_ENABLE_DESTRUCTIVE=true. |
pipedrive_update_organization_field_options | Bulk-update option labels of an organization enum/set field. Atomic: the whole request fails if any option ID does not exist. |
pipedrive_delete_organization_field_options ๐ | Bulk-delete options of an organization enum/set field. Atomic: fails if any ID does not exist. Requires PIPEDRIVE_ENABLE_DESTRUCTIVE=true. |
pipedrive_create_product_field | Create a product custom field. field_name and field_type are required. For enum/set types, options is required. Product fields use a simpler model: no description, important_fields, or required_fields. The response data.field_code is the 40-char hash to keep for later updates. |
pipedrive_update_product_field | Update a product custom field by field_code. Only field_name and ui_visibility can be changed (product fields have no description/important_fields/required_fields). |
pipedrive_delete_product_field ๐ | Delete a product custom field by field_code. Requires PIPEDRIVE_ENABLE_DESTRUCTIVE=true. |
pipedrive_update_product_field_options | Bulk-update option labels of a product enum/set field. Atomic: the whole request fails if any option ID does not exist. |
pipedrive_delete_product_field_options ๐ | Bulk-delete options of a product enum/set field. Atomic: fails if any ID does not exist. Requires PIPEDRIVE_ENABLE_DESTRUCTIVE=true. |
| Tool | Description |
|---|---|
pipedrive_list_pipelines | List sales pipelines in Pipedrive with cursor pagination. Pipelines contain stages that deals move through. |
pipedrive_list_stages | List stages with cursor pagination, optionally filtered by pipeline. Stages represent steps in the sales process. |
pipedrive_get_stage | Get details of a specific stage by ID. |
pipedrive_create_pipeline | Create a new sales pipeline. Only name is required. Set is_deal_probability_enabled to turn on weighted deal probability for the pipeline. |
pipedrive_update_pipeline | Update an existing pipeline. Provide the pipeline id and any fields to change. |
pipedrive_delete_pipeline ๐ | Delete a pipeline. Marks the pipeline as deleted. Requires PIPEDRIVE_ENABLE_DESTRUCTIVE=true. |
pipedrive_create_stage | Create a new stage in a pipeline. name and pipeline_id are required. Use is_deal_rot_enabled and days_to_rotten to configure deal rotting. |
pipedrive_update_stage | Update an existing stage. Provide the stage id and any fields to change. Set pipeline_id to move the stage to another pipeline. |
pipedrive_delete_stage ๐ | Delete a stage. Marks the stage as deleted. Requires PIPEDRIVE_ENABLE_DESTRUCTIVE=true. |
| Tool | Description |
|---|---|
pipedrive_list_users | List all users in the Pipedrive account. Useful for finding owner IDs when creating or filtering records. |
pipedrive_get_user | Get details of a specific user by ID. |
pipedrive_get_current_user | Get details of the current user (API key owner). Useful for verifying connection and getting your user ID. |
"Show me all open deals in the Sales pipeline, sorted by value"
"Get details for deal 12345 including custom fields"
"Move deal 12345 to the Proposal stage"
"Find contacts at Acme Corp"
"Get emails for person 456 to analyze their engagement"
"What custom fields do we have for persons?"
"List my overdue activities"
"Create a follow-up call with John Smith for tomorrow at 2pm"
"Mark activity 789 as done"
"List all custom fields for deals"
"What does field '8a4d7f...' mean?" (40-char hash)
git clone https://github.com/ckalima/pipedrive-mcp-server.git
cd pipedrive-mcp-server
npm install
cp .env.example .env
# Edit .env with your API key
npm run build
npm run start
npm run dev
npx @modelcontextprotocol/inspector node dist/index.js
This server uses both Pipedrive API versions, routing each call to the correct one automatically:
/api/v2): Deals, Persons, Organizations, Activities, Products, Projects, Tasks, Boards & Phases, Fields, Pipelines & Stages, and Leads search/v1): Mail, Notes, Users, and Leads CRUDPipedrive is sunsetting v1. Selected v1 endpoints that have v2 equivalents reach end-of-life on 2025-12-31, with full v1 sunset expected around 2026-07-31; the v1 surfaces above (Mail, Notes, Users, Leads CRUD) have no v2 replacement yet. See docs/v1-only-capabilities.md for details.
Errors are returned with actionable suggestions:
{
"error": {
"code": "INVALID_API_KEY",
"message": "API key is invalid or expired",
"suggestion": "Verify your API key at Pipedrive Settings > Personal preferences > API"
}
}
Common error codes:
MISSING_API_KEY - Set PIPEDRIVE_API_KEY environment variableINVALID_API_KEY - Check your API key in Pipedrive settingsNOT_FOUND - The requested resource doesn't existRATE_LIMITED - Wait 60 seconds before retryingVALIDATION_ERROR - Check your request parametersSee SECURITY.md for the threat model (data flows, credential handling, prompt-injection honesty, and known limitations) and how to report a vulnerability privately. In short: STDIO-only with no network listener, the API token is read from the environment and never logged, and destructive operations are gated off by default.
See CONTRIBUTING.md for guidelines.
MIT - see LICENSE
Be the first to review this server!
by Modelcontextprotocol ยท Developer Tools
Web content fetching and conversion for efficient LLM usage
by Toleno ยท Developer Tools
Toleno Network MCP Server โ Manage your Toleno mining account with Claude AI using natural language.
by mcp-marketplace ยท Developer Tools
Create, build, and publish Python MCP servers to PyPI โ conversationally.