{"name":"io.github.ckalima/pipedrive-mcp-server","slug":"ckalima-pipedrive-mcp-server","title":"Pipedrive CRM","description":"MCP server for Pipedrive CRM. 155 tools for deals, persons, organizations, activities, and more.","url":"https://mcp.market/server/ckalima-pipedrive-mcp-server","rating":null,"grade":"B","score":83,"certified":false,"status":"active","category":"sales","tags":["sales"],"presence":{"score":35,"stars":8,"forks":2,"downloads_week":152,"last_push_at":"2026-09-19T00:53:12.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"mixed","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/ckalima/pipedrive-mcp-server","website":null,"version":"2.7.0","remotes":[],"packages":[{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"@ckalima/pipedrive-mcp-server","version":"2.7.0","runtimeHint":"npx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Your 40-character Pipedrive API token (Settings > Personal preferences > API).","isRequired":true,"format":"string","isSecret":true,"name":"PIPEDRIVE_API_KEY"},{"description":"Server-enforced capability tier: 'read-only' (reads only), 'safe-write' (reads + non-destructive writes; the default), or 'full' (all tools, including destructive). Out-of-mode tools are hidden from tools/list and refused if called directly. A blank value is treated as unset (defaults to safe-write); an unrecognized value falls back to read-only.","format":"string","name":"PIPEDRIVE_MODE"},{"description":"Legacy flag, superseded by PIPEDRIVE_MODE. When PIPEDRIVE_MODE is unset, 'true' maps to full; otherwise prefer PIPEDRIVE_MODE=full. Still honored for back-compat.","format":"string","name":"PIPEDRIVE_ENABLE_DESTRUCTIVE"},{"description":"Allowlisted directory the server may read product images from when a file_path is passed to the image-upload tools. Filesystem reads are disabled unless this is set, and a file_path must resolve within it.","format":"string","name":"PIPEDRIVE_IMAGE_BASE_DIR"}]},{"registryType":"mcpb","identifier":"https://github.com/ckalima/pipedrive-mcp-server/releases/download/v2.7.0/pipedrive-mcp-server-2.7.0.mcpb","version":"2.7.0","fileSha256":"c6055899217acb71bcd024faad734185f0a929ba22399ac5723f812bc76ffdfe","transport":{"type":"stdio"}}],"tools":[{"name":"pipedrive_add_deal_discount","description":"Add an additional discount to a deal.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_add_deal_follower","description":"Add a follower to a deal.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_add_deal_installment","description":"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.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_add_deal_product","description":"Attach a single product as a line item to a deal.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_add_organization_follower","description":"Add a follower to an organization.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_bulk_add_deal_products","description":"Bulk-add up to 100 line-item products to a deal in one request.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_convert_deal_to_lead","description":"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_MODE=full (back-compat: PIPEDRIVE_ENABLE_DESTRUCTIVE=true).","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_convert_lead_to_deal","description":"Convert a lead into a deal (Pipedrive v2). DESTRUCTIVE: a successful conversion marks the source lead as deleted. 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. Requires PIPEDRIVE_MODE=full (back-compat: PIPEDRIVE_ENABLE_DESTRUCT","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_create_activity","description":"Create a new activity in Pipedrive. Subject and type are required.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_create_board","description":"Create a new project board. name is required. (Projects add-on; Projects API in public beta.)","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_create_deal","description":"Create a new deal in Pipedrive. Only title is required; all other fields are optional.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_create_deal_field","description":"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.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_create_lead","description":"Create a new lead in Pipedrive. Title is required; link to at least one of person_id or organization_id.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_create_note","description":"Create a new note in Pipedrive. Content is required. Link to a deal, person, organization, or lead.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_create_organization","description":"Create a new organization in Pipedrive. Only name is required.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_create_organization_field","description":"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.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_create_person","description":"Create a new person (contact) in Pipedrive. Only name is required.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_create_person_field","description":"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.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_create_phase","description":"Create a new project phase. name and board_id are required. (Projects add-on; Projects API in public beta.)","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_create_product_field","description":"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.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_delete_activity","description":"Delete an activity.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_delete_board","description":"Delete a project board. Requires PIPEDRIVE_MODE=full (back-compat: PIPEDRIVE_ENABLE_DESTRUCTIVE=true). (Projects add-on; Projects API in public beta.)","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_delete_deal","description":"Delete a deal. The deal will be marked as deleted and permanently removed after 30 days.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_delete_deal_discount","description":"Delete an additional discount from a deal.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_delete_deal_field","description":"Delete a deal custom field by field_code. Requires PIPEDRIVE_MODE=full (back-compat: PIPEDRIVE_ENABLE_DESTRUCTIVE=true).","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_delete_deal_field_options","description":"Bulk-delete options of a deal enum/set field. Atomic: fails if any ID does not exist. Requires PIPEDRIVE_MODE=full (back-compat: PIPEDRIVE_ENABLE_DESTRUCTIVE=true).","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_delete_deal_follower","description":"Remove a follower from a deal.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_delete_deal_installment","description":"Delete an installment from a deal. Growth+ plan required.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_delete_deal_product","description":"Remove a line-item product from a deal.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_delete_lead","description":"Delete a lead. Requires PIPEDRIVE_MODE=full (back-compat: PIPEDRIVE_ENABLE_DESTRUCTIVE=true).","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_delete_note","description":"Delete a note.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_delete_organization","description":"Delete an organization. The organization will be marked as deleted and permanently removed after 30 days.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_delete_organization_field","description":"Delete an organization custom field by field_code. Requires PIPEDRIVE_MODE=full (back-compat: PIPEDRIVE_ENABLE_DESTRUCTIVE=true).","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_delete_organization_field_options","description":"Bulk-delete options of an organization enum/set field. Atomic: fails if any ID does not exist. Requires PIPEDRIVE_MODE=full (back-compat: PIPEDRIVE_ENABLE_DESTRUCTIVE=true).","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_delete_organization_follower","description":"Remove a follower from an organization.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_delete_person_field","description":"Delete a person custom field by field_code. Requires PIPEDRIVE_MODE=full (back-compat: PIPEDRIVE_ENABLE_DESTRUCTIVE=true).","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_delete_person_field_options","description":"Bulk-delete options of a person enum/set field. Atomic: fails if any ID does not exist. Requires PIPEDRIVE_MODE=full (back-compat: PIPEDRIVE_ENABLE_DESTRUCTIVE=true).","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_delete_phase","description":"Delete a project phase. Requires PIPEDRIVE_MODE=full (back-compat: PIPEDRIVE_ENABLE_DESTRUCTIVE=true). (Projects add-on; Projects API in public beta.)","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_delete_product_field","description":"Delete a product custom field by field_code. Requires PIPEDRIVE_MODE=full (back-compat: PIPEDRIVE_ENABLE_DESTRUCTIVE=true).","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_delete_product_field_options","description":"Bulk-delete options of a product enum/set field. Atomic: fails if any ID does not exist. Requires PIPEDRIVE_MODE=full (back-compat: PIPEDRIVE_ENABLE_DESTRUCTIVE=true).","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_get_activity","description":"Get detailed information about a specific activity by ID.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_get_board","description":"Get detailed information about a specific project board by ID. (Projects add-on; Projects API in public beta.)","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_get_deal","description":"Get detailed information about a specific deal by ID, including all standard and custom fields.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_get_deal_conversion_status","description":"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 s","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_get_deal_emails","description":"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.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_get_deal_followers_changelog","description":"Get the followers changelog for a deal.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_get_field","description":"Get details of a specific field by its key. Useful for looking up what a 40-character hash field key means.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_get_lead","description":"Get detailed information about a specific lead by UUID.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_get_lead_conversion_status","description":"Get the status of an async lead-to-deal conversion by conversion ID (Pipedrive v2 GET /leads/{id}/convert/status/{conversion_id}).","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_get_mail_message","description":"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.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_get_mail_thread","description":"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.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_get_note","description":"Get detailed information about a specific note by ID.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_get_organization","description":"Get detailed information about a specific organization by ID.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_get_organization_followers_changelog","description":"Get the followers changelog for an organization.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_get_person","description":"Get detailed information about a specific person by ID.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_get_person_emails","description":"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.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_get_phase","description":"Get detailed information about a specific project phase by ID. (Projects add-on; Projects API in public beta.)","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_list_activities","description":"List activities from Pipedrive with optional filtering by owner, deal, person, organization, type, or completion status.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_list_archived_deals","description":"List archived deals with the same filtering as the active deals list (owner, person, organization, pipeline, stage, status). Returns paginated results.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_list_archived_leads","description":"List archived leads from Pipedrive with optional filtering by owner, person, or organization.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_list_boards","description":"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.)","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_list_deal_discounts","description":"List all additional discounts applied to a deal.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_list_deal_fields","description":"List all deal field definitions, including custom fields. Essential for understanding deal data structure.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_list_deal_followers","description":"List all followers for a deal.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_list_deal_installments","description":"List installments across one or more deals. Requires deal_ids. Growth+ plan required.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_list_deal_products","description":"List line-item products attached to a deal. Returns paginated results.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_list_deals","description":"List deals from Pipedrive with optional filtering by owner, person, organization, pipeline, stage, or status. Returns paginated results.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_list_leads","description":"List active (non-archived) leads from Pipedrive with optional filtering by owner, person, or organization.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_list_mail_threads","description":"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.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_list_notes","description":"List notes from Pipedrive with optional filtering by deal, person, organization, or lead.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_list_organization_fields","description":"List all organization field definitions, including custom fields. Use this to map 40-character field keys to human-readable names.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_list_organization_followers","description":"List all followers for an organization.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_list_organizations","description":"List organizations from Pipedrive with optional filtering by owner or first letter of name.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_list_person_fields","description":"List all person field definitions, including custom fields. Use to understand contact data structure.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_list_persons","description":"List persons (contacts) from Pipedrive with optional filtering by owner, organization, or first letter of name.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_list_phases","description":"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.)","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_list_product_fields","description":"List all product field definitions, including custom fields.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_list_project_fields","description":"List all project field definitions, including custom fields. (Projects add-on; Projects API in public beta.)","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_search_deals","description":"Search for deals by text in title. Supports fuzzy matching by default.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_search_leads","description":"Search for leads in Pipedrive by title or associated contacts.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_search_organizations","description":"Search for organizations by name or address.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pipedrive_update_activity","description":"Update an existing activity in Pipedrive. Use this to mark activities as done.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_update_board","description":"Update an existing project board. Only id is required; all other fields are optional. (Projects add-on; Projects API in public beta.)","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_update_deal","description":"Update an existing deal in Pipedrive. Specify the deal ID and any fields to update.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_update_deal_discount","description":"Update an additional discount on a deal. All fields except IDs are optional.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_update_deal_field","description":"Update a deal custom field by field_code. field_type and field_code cannot be changed.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_update_deal_field_options","description":"Bulk-update option labels of a deal enum/set field. Atomic: the whole request fails if any option ID does not exist.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_update_deal_installment","description":"Update an installment on a deal. Growth+ plan required; all body fields optional.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_update_deal_product","description":"Update a line-item product attached to a deal. All body fields optional.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_update_lead","description":"Update an existing lead in Pipedrive.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_update_note","description":"Update an existing note in Pipedrive.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_update_organization","description":"Update an existing organization in Pipedrive.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_update_organization_field","description":"Update an organization custom field by field_code. field_type and field_code cannot be changed.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_update_organization_field_options","description":"Bulk-update option labels of an organization enum/set field. Atomic: the whole request fails if any option ID does not exist.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_update_person","description":"Update an existing person in Pipedrive.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_update_person_field","description":"Update a person custom field by field_code. field_type and field_code cannot be changed.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_update_person_field_options","description":"Bulk-update option labels of a person enum/set field. Atomic: the whole request fails if any option ID does not exist.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_update_phase","description":"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.)","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_update_product_field","description":"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).","write_action":true,"price_micros":0,"input_schema":null},{"name":"pipedrive_update_product_field_options","description":"Bulk-update option labels of a product enum/set field. Atomic: the whole request fails if any option ID does not exist.","write_action":true,"price_micros":0,"input_schema":null}],"scan":{"score":83,"grade":"B","scanned_at":"2026-09-21T22:09:50.494Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-21T22:09:50.430Z","components":{"code":{"score":25,"max":25,"notes":["93 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":15,"max":15,"notes":["last push 3 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"@ckalima/pipedrive-mcp-server","version":"2.7.0","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":2,"publishedAt":"2026-08-22T02:02:59.138Z","repositoryUrl":"git+https://github.com/ckalima/pipedrive-mcp-server.git","weeklyDownloads":152}],"repo":{"found":true,"owner":"ckalima","repo":"pipedrive-mcp-server","archived":false,"pushedAt":"2026-09-19T00:53:12Z","stars":8,"forks":2,"openIssues":1,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/264071?v=4","ownerCreatedAt":"2010-05-04T03:24:27Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/264071?v=4&s=128","source":"github"},"presence":{"stars":8,"forks":2,"downloadsWeek":152,"license":"MIT","lastPushAt":"2026-09-19T00:53:12.000Z","score":35}}}},"grade_history":[],"reviews":[]}