# Pipedrive CRM

Wires Pipedrive into your AI assistant with 155 tools covering deals, contacts, organizations and activities. Capability modes decide what the agent can even see.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 10
- Author: ckalima
- License: MIT · policy=link-only · description only; the file stays with the author
- Source: https://github.com/ckalima/pipedrive-mcp-server
- Updated: 2026-10-24
- HTML: https://affpapa.org/en/nevibecode/mcp/pipedrive-crm

## What it does

The server talks to Pipedrive's REST API: entities that have a v2 endpoint use it, while notes, mail, users and leads CRUD fall back to v1. Contract tests check request params, bodies and response shapes against the vendored OpenAPI v2 spec, so the v2 tools stay aligned with the documented API. The tool surface is also exercised against a live Pipedrive account.

\`PIPEDRIVE_MODE` picks the safety tier. `read-only` exposes 69 tools, `safe-write` gives 123 including non-destructive writes, and `full` unlocks all 155. Tools outside the active tier are filtered from `tools/list` and refused by name if called directly. Deletes and conversions need `full`; below that they return a `DESTRUCTIVE_DISABLED` error.

You need a 40-character Pipedrive API key from your account settings. Transport is STDIO only, and there is no hosted OAuth. Reading product images from disk stays off until `PIPEDRIVE_IMAGE_BASE_DIR` is set — a `file_path` has to resolve inside that directory, otherwise pass `base64_data`.

## Requirements
- Needs: Node.js (commands run via npx)
- Environment variables: `PIPEDRIVE_API_KEY`, `PIPEDRIVE_MODE`, `PIPEDRIVE_ENABLE_DESTRUCTIVE`, `PIPEDRIVE_IMAGE_BASE_DIR` — keys and tokens: ask the human for the values, never commit them or put them in shared files.

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add --env PIPEDRIVE_API_KEY=<PIPEDRIVE_API_KEY> --env PIPEDRIVE_MODE=<PIPEDRIVE_MODE> --env PIPEDRIVE_ENABLE_DESTRUCTIVE=<PIPEDRIVE_ENABLE_DESTRUCTIVE> --env PIPEDRIVE_IMAGE_BASE_DIR=<PIPEDRIVE_IMAGE_BASE_DIR> --transport stdio pipedrive-crm -- npx -y @ckalima/pipedrive-mcp-server
```
Replace <…> with your own values

### Codex

**Platform CLI**
```bash
codex mcp add pipedrive-crm --env PIPEDRIVE_API_KEY=<PIPEDRIVE_API_KEY> --env PIPEDRIVE_MODE=<PIPEDRIVE_MODE> --env PIPEDRIVE_ENABLE_DESTRUCTIVE=<PIPEDRIVE_ENABLE_DESTRUCTIVE> --env PIPEDRIVE_IMAGE_BASE_DIR=<PIPEDRIVE_IMAGE_BASE_DIR> -- npx -y @ckalima/pipedrive-mcp-server
```
Replace <…> with your own values

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "pipedrive-crm": {
            "command": "npx",
            "args": [
                "-y",
                "@ckalima/pipedrive-mcp-server"
            ],
            "env": {
                "PIPEDRIVE_API_KEY": "<PIPEDRIVE_API_KEY>",
                "PIPEDRIVE_MODE": "<PIPEDRIVE_MODE>",
                "PIPEDRIVE_ENABLE_DESTRUCTIVE": "<PIPEDRIVE_ENABLE_DESTRUCTIVE>",
                "PIPEDRIVE_IMAGE_BASE_DIR": "<PIPEDRIVE_IMAGE_BASE_DIR>"
            }
        }
    }
}
```
Replace <…> with your own values

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "pipedrive-crm": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "@ckalima/pipedrive-mcp-server"
            ],
            "env": {
                "PIPEDRIVE_API_KEY": "<PIPEDRIVE_API_KEY>",
                "PIPEDRIVE_MODE": "<PIPEDRIVE_MODE>",
                "PIPEDRIVE_ENABLE_DESTRUCTIVE": "<PIPEDRIVE_ENABLE_DESTRUCTIVE>",
                "PIPEDRIVE_IMAGE_BASE_DIR": "<PIPEDRIVE_IMAGE_BASE_DIR>"
            }
        }
    }
}
```
Replace <…> with your own values

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add -e PIPEDRIVE_API_KEY=<PIPEDRIVE_API_KEY> -e PIPEDRIVE_MODE=<PIPEDRIVE_MODE> -e PIPEDRIVE_ENABLE_DESTRUCTIVE=<PIPEDRIVE_ENABLE_DESTRUCTIVE> -e PIPEDRIVE_IMAGE_BASE_DIR=<PIPEDRIVE_IMAGE_BASE_DIR> pipedrive-crm npx -y @ckalima/pipedrive-mcp-server
```
Replace <…> with your own values

## When to use it
- pull every deal sitting in one pipeline stage
- create a person and attach them to an organization
- find activities on a deal and mark them done
- decode custom field hash codes into readable names
- page through a large deal list with cursor pagination

## Example prompts
- List all deals in the Negotiation stage with their values
- Create a person with client@example.com and link them to Acme
- Find every activity on deal 123 and mark the finished ones done

## Similar
- [REA](https://affpapa.org/en/nevibecode/mcp/rea.md) — MCP server · ★ 386989
- [GitHub](https://affpapa.org/en/nevibecode/mcp/github.md) — MCP server · ★ 33918
- [Netdata](https://affpapa.org/en/nevibecode/mcp/netdata.md) — MCP server · ★ 81115
- [browser-use](https://affpapa.org/en/nevibecode/mcp/browser-use.md) — MCP server · ★ 119160
- [Codebase Memory](https://affpapa.org/en/nevibecode/mcp/codebase-memory.md) — MCP server · ★ 47392
- [mcp-server](https://affpapa.org/en/nevibecode/mcp/mcp-server.md) — MCP server · ★ 43872

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
