Guides

How Do I Connect My CRM to Claude or Cursor via MCP?

Wire HubSpot, Salesforce, Pipedrive, or Attio into Claude Desktop or Cursor using MCP. Plus what to add on top so the agent has live GTM data.

George Gogidze George Gogidze · · 10 min read
How Do I Connect My CRM to Claude or Cursor via MCP?

You want Claude or Cursor to read your pipeline, update records, and reason over deals without you doing the CSV dance. MCP is how that gets wired. Here is the clean path.

I am George, founder of Leadpipe. We ship the Leadpipe MCP server, so this is a topic I have spent a lot of time on. The good news is that connecting a CRM to Claude Desktop or Cursor is genuinely quick now. The catch is that your CRM alone is not enough. Without a live identity and intent layer on top, the agent can only reason over what is already in the CRM. Most of what matters is not.

This post is the wiring guide and the honest assessment of what you get, what you do not, and what to add so the agent is actually useful.


What MCP is, in one paragraph

Model Context Protocol is the open standard Anthropic introduced for connecting AI agents to external tools. Instead of writing custom API wrappers per tool, you point an MCP server at a data source and the agent gets structured tool access. One config file, one restart, and Claude or Cursor can call those tools by name. The Leadpipe MCP server exposes 27 tools. The CRM MCP servers below expose their own.

The agent does not care which CRM. It calls tools. That is the whole point.


CRM MCP server landscape, April 2026

This is where the story is uneven. Not every CRM ships a first-party MCP server. Some do, some have community servers, some you wire through a generic REST MCP adapter. The current state, as honestly as I can describe it:

CRMMCP pathMaturity
HubSpotCommunity MCP servers available; HubSpot API direct via generic MCP or Zapier MCPGood, multiple options
SalesforceCommunity MCP servers; REST via generic MCP adapterGood, community-led
PipedriveCommunity MCP serversUsable
AttioMCP server availableUsable
CloseGeneric REST MCP adapterWorks, DIY
Zoho CRMGeneric REST MCP adapterWorks, DIY

If your CRM is not on the list, a generic REST-to-MCP adapter works. Cloudflare has one, there is a community mcp-server-fetch, and writing a thin one is roughly a day of work for a competent developer. I am not going to recommend a specific community MCP server here because the ecosystem is moving weekly. Search the MCP registry and pick one with active maintenance.


Step 1: install the client

Claude Desktop

Mac or Windows. Open Settings. Find the claude_desktop_config.json file (Settings → Developer → Edit Config). Add an mcpServers block. Save. Restart Claude Desktop.

Cursor

Open ~/.cursor/mcp.json. Same structure. Save. Restart Cursor.

Both clients read the file on launch. If the server does not appear, check the logs (Cursor has an MCP panel, Claude Desktop logs are in the app data directory).


Step 2: configure the CRM server

A generic HubSpot example via a community MCP server:

{
  "mcpServers": {
    "hubspot": {
      "command": "npx",
      "args": ["-y", "@some-maintainer/hubspot-mcp"],
      "env": {
        "HUBSPOT_API_KEY": "pat-..."
      }
    }
  }
}

Replace @some-maintainer/hubspot-mcp with the actual package you chose. Same pattern for Salesforce, Pipedrive, Attio. The env variable names change per service; the shape does not.

A Salesforce example via a community MCP:

{
  "mcpServers": {
    "salesforce": {
      "command": "npx",
      "args": ["-y", "@some-maintainer/salesforce-mcp"],
      "env": {
        "SF_USERNAME": "...",
        "SF_PASSWORD": "...",
        "SF_TOKEN": "..."
      }
    }
  }
}

Restart the client. You should see CRM tools appear in the tool panel. Ask Claude “list my 10 most recent deals” and it should call the tool.


Step 3: add Leadpipe for live GTM data

Here is where I stop being polite. The CRM alone is not enough. Your CRM knows about known contacts. It does not know who is on your site right now. It does not know who on your target accounts is researching your category this week. It does not know which anonymous visitor just became a hot lead.

Add the Leadpipe MCP server. One line:

npx -y @leadpipe/mcp

In the config:

{
  "mcpServers": {
    "hubspot": {
      "command": "npx",
      "args": ["-y", "@some-maintainer/hubspot-mcp"],
      "env": { "HUBSPOT_API_KEY": "pat-..." }
    },
    "leadpipe": {
      "command": "npx",
      "args": ["-y", "@leadpipe/mcp"],
      "env": { "LEADPIPE_API_KEY": "sk_..." }
    }
  }
}

Restart. Now the agent has 27 Leadpipe tools (topic discovery, audience builder, visitor lookup, pixel management, account health) plus whatever your CRM MCP exposes. The full tool list is in the MCP server post.


Step 4: useful cross-server prompts

The point of having both CRMs is that you can ask the agent to reason across them. Some prompts that work.

Find hot inbound that is not in the CRM:

Use Leadpipe to list identified visitors from the last 7 days
with intent score over 70. For each one, check HubSpot. If the
company is not already a contact, create one with the Leadpipe
enrichment fields (title, LinkedIn, company size, industry).
Do not create duplicates.

Update CRM stage based on intent:

Pull the list of open opportunities in HubSpot where the deal
stage is "Discovery." For each, look up the primary contact in
Leadpipe and check recent visitor activity. If the contact has
visited /pricing in the last 48 hours, flag the opportunity
as "High Intent" in a custom property.

Build a target list from Orbit and push to CRM:

Use Leadpipe Orbit to find VPs of Revenue at 100-500 person
SaaS companies researching CRM migration this week. Return
the top 25 by intent score. Then check HubSpot and create
contact records for any who are not already in the system.
Tag them "Orbit-April-26."

Clean up the CRM:

For the 50 oldest contacts in HubSpot that have not been
touched in 6+ months, check Leadpipe for current job title
and company. Flag any where the data has changed. Do not
update automatically, just produce a list for review.

The agent does the orchestration. You read and approve.


The honest comparison: MCP vs Zapier vs direct API

You have three roads to integrate a CRM with an AI agent. They are not the same.

PathWho it is forEffortReliability
Direct APIEngineers building production featuresHighestHighest
Zapier / n8nOps teams, no-code, interactive workflowsLow-mediumGood
MCPAnyone giving Claude/Cursor tool access in a sessionLowestGood

MCP is not a replacement for Zapier. It is a different shape. Zapier is good when you want a triggered workflow: “when a new visitor is identified, create a HubSpot contact and send a Slack message.” MCP is good when you want an agent to reason interactively across tools: “find hot inbound, check if they are in HubSpot, decide what to do.”

Most teams end up using both. Zapier for deterministic workflows. MCP for agent-driven work. Leadpipe ships native integrations for both. See Leadpipe Zapier automation recipes and Leadpipe n8n automation for the workflow side.

On the direct-API side, Leadpipe ships 23 REST endpoints and a TypeScript SDK so you can build custom features on top. Use the SDK for code, use MCP for agent conversations.


Compliance and scope

Two things worth saying out loud.

API keys are all-or-nothing in most current MCP servers. If you give Claude an API key to HubSpot, Claude can do anything that key can do. Create contacts, update deals, delete records. Use least-privilege keys where the CRM supports them. Scope to read-only for the first few sessions while you learn what the agent actually does.

Data egress matters. When Claude calls a CRM tool, the response data passes through the model. Anthropic’s enterprise terms cover this for most production use, but if you are in a regulated industry (healthcare, financial services), check with your security team before giving the model access to PII-heavy records.

On the Leadpipe side, we are CCPA compliant and GDPR compliant with a company-level default in EU/UK (person-level requires affirmative consent). DPA on request. SOC 2 Type II readiness is in progress. See GDPR-compliant visitor identification for the data handling details.


Concrete example: end-to-end

A small test I ran with a founder this month. Their setup:

  • HubSpot CRM, 15k contacts, maybe 3k active in open deals
  • Leadpipe pixel on the site for about 4 weeks
  • Claude Desktop with both MCP servers wired

Prompt:

Look at Leadpipe visitor data for the last 14 days. Filter to
decision-makers (Director+ seniority) at companies with 50+
employees. For each, check HubSpot: if they are not in the CRM,
show me the top 10 by intent score. Do not create anything yet.

Output: 10 identified decision-makers, with title, company, pages viewed, intent score, and a HubSpot status for each. 8 of the 10 were not in the CRM. Two had already been added via form fill but had no deal attached.

That is not a feature of the model. That is a feature of having live identity data wired into the same agent that has CRM access. The model picked up the reasoning automatically once the tools were there.


When MCP is the wrong answer

To be balanced. MCP is not always the right path:

  • If you need a triggered workflow (event → action), use Zapier, n8n, or a webhook. Not MCP.
  • If you are embedding identity data in your product, use the Leadpipe SDK or REST API, not MCP.
  • If you are building a multi-user production agent, you probably want the API directly for auth and scoping, not MCP.

MCP is for agent-in-a-session work. Humans talking to Claude or Cursor, agents running in a chat-like loop. For backend glue, use the API.


Five-minute checklist

  1. Install an MCP-compatible client (Claude Desktop or Cursor).
  2. Add a CRM MCP server, paste your API key, restart.
  3. Add the Leadpipe MCP server: npx -y @leadpipe/mcp, paste the API key, restart.
  4. Test with a read-only prompt (“list my 10 most recent deals”).
  5. Layer in cross-server prompts once the agent is behaving.

Five minutes once everything is installed, maybe an hour the first time you set it up end-to-end.


Every plan ships with the same identity graph, 23 REST endpoints, webhooks, and a 27-tool MCP server. Start in 5 minutes →