← Back to articles
Ops AI5 MIN READ

We Connected HubSpot to Claude via MCP. Here Are the Guardrails.

HubSpot's MCP server lets Claude read and write live CRM data. Here's exactly which guardrails one team put in place before letting AI touch real records.

Alex Followell
Alex Followell
2026-09-02 · 5 min read
TL;DR

HubSpot's MCP server went GA in April 2025 and is free. Connecting it to Claude takes about 10 minutes. Deciding what it cannot touch takes considerably longer. The team at nbh.co spent roughly a week mapping permissions, scoping read vs. write access, and locking down contacts, deals, and owner fields before they felt comfortable letting the integration run on live data.

Should you connect Claude to your live CRM?

Yes, but not without a deliberate access plan first. HubSpot's MCP server went generally available in April 2025, it is free, and the technical setup takes under 10 minutes. The policy work that should precede it takes closer to a week if you do it properly. Most teams skip that week. That is where things go wrong.

What is MCP and why does it matter for CRM?

MCP stands for Model Context Protocol. It is an open standard, introduced by Anthropic in late 2024, that lets AI models like Claude connect to external tools and data sources through a standardized interface. Think of it as a USB standard for AI integrations: instead of custom API wiring for every tool, you get a consistent handshake.

For a HubSpot user, this means Claude can read contact records, pull deal stages, summarize activity timelines, and with the right permissions, write back to the CRM. That last part is where most SMB operators should slow down.

How does the HubSpot MCP connection actually work?

The setup is genuinely fast. You install the HubSpot MCP server, point it at your HubSpot account via a private app token, and configure it inside Claude's desktop client or whichever MCP-compatible interface you use. Total technical lift: under 10 minutes for someone comfortable with developer settings.

Once connected, Claude can:

  • Query contacts, companies, and deals by name, owner, or property
  • Summarize recent activity logs and notes
  • Draft and, if permitted, post notes or update properties directly
  • Pull pipeline data for reporting summaries

The word "permitted" is doing heavy lifting in that list.

Where did the nbh.co team put their guardrails?

The team at nbh.co published a detailed account of their setup process. Their core finding: the technical connection is trivial. The governance layer is where the real work sits.

Here is where they drew hard lines:

1. Read vs. write scope

They started with a read-only configuration for the first two weeks. Claude could query and summarize but could not write anything back to HubSpot. This let them validate that the queries were returning accurate data before any writes touched live records.

"Connecting it takes 10 minutes. Deciding what it can't touch takes a week."

That sequencing matters. If you invert it and give write access on day one, you find out about bad behavior when a contact record is wrong, not during a quiet audit.

2. Contact owner fields are locked

Owner reassignment was explicitly excluded from Claude's write permissions. Reassigning a contact owner in HubSpot can trigger automated sequences, commission tracking, and routing rules. An AI making that change, even accidentally, can cause downstream problems that are annoying to unwind.

3. Deal stage writes require human confirmation

Deal stages were flagged as high-sensitivity. Claude can read stage data and report on it freely. Writing a stage change requires a human to confirm the action before it executes. This is a pattern worth copying: identify the fields where a wrong write has the highest blast radius, and add a confirmation step.

4. Deletion is off the table entirely

No delete permissions were granted at any level. This one should be non-negotiable for any team running MCP against production CRM data. Deleting a contact in HubSpot removes activity history, associated deals, and can break list memberships. There is no good reason for an AI to have that access.

5. A dedicated private app token with minimal scopes

Rather than using a broad API key, the team created a HubSpot private app with only the scopes the integration actually needed. HubSpot's private apps let you grant granular OAuth-style scopes: contacts read, deals read, notes write, and so on. Narrowing the token surface area means a misconfigured prompt cannot accidentally access billing data or user management endpoints.

What fields are actually safe for AI to write?

Based on the nbh.co approach and general CRM governance practice, here is a rough breakdown:

| Field Type | Read | Write (AI) | Notes | |---|---|---|---| | Contact name, email, phone | Yes | Caution | Verify before write; duplicates are painful | | Activity notes | Yes | Yes, with logging | Low blast radius, high utility | | Deal amount | Yes | No | Financial data; human only | | Deal stage | Yes | Human confirm | Downstream automation risk | | Contact owner | Yes | No | Triggers routing and sequences | | Custom properties (non-critical) | Yes | Yes | Depends on what automation reads them | | Any record deletion | Yes | Never | No exceptions |

What does this actually look like in practice?

Once the guardrails were in place, the workflow the nbh.co team landed on looks something like this: a sales rep asks Claude to summarize the last 30 days of activity for a specific contact, draft a follow-up note, and flag any deals that have been sitting in the same stage for more than 14 days. Claude pulls the data, drafts the note, and surfaces the stale deals. The rep reviews, edits if needed, and approves the note write. The stale deal list goes into a Slack message for the sales manager.

That is a meaningful time save with a human still in the loop on anything consequential.

What we'd actually do

  • Start read-only for two weeks. Do not grant write permissions until you have validated that Claude is querying your CRM accurately and that your team understands what the integration is doing. Two weeks of read-only use surfaces surprises cheaply.
  • Map your high-blast-radius fields before you configure anything. Sit down with your sales or ops lead and list every HubSpot field that, if wrong, would cause real downstream pain. Those fields get locked or require human confirmation by default.
  • Use a scoped private app token, not a master API key. Create a dedicated HubSpot private app for the MCP integration with only the scopes you need. If you are not sure which scopes, start with contacts.read, crm.objects.deals.read, and crm.objects.notes.write, and expand deliberately from there.

If you want to work through this kind of setup with operators who have already done it, that is exactly what we do inside skool.com/aiforbusiness.

FAQ

Is the HubSpot MCP server free to use?

Yes. HubSpot's MCP server went generally available in April 2025 and is free. You do need a HubSpot account with API access and a private app token to authenticate. The token setup takes a few minutes inside HubSpot's developer settings.

Can Claude delete records in HubSpot through MCP?

Only if you grant it delete permissions, which you should not. The safe default is to create a scoped private app token that excludes all delete scopes entirely. Deletion in HubSpot removes activity history and can break list memberships, so there is no good case for giving an AI that access.

How long does it take to set up HubSpot with Claude via MCP?

The technical connection takes under 10 minutes. The governance work, deciding which fields Claude can read versus write, scoping the API token, and documenting what requires human confirmation, takes closer to a week if you do it properly. Most teams underestimate that second part.

JOIN THE COMMUNITY

Want this running in your business?

The Skool community is where we show the full builds, share the templates, and help you implement. Three tiers, from team training to fractional AI expert.

  • Weekly Q&A with Alex and Cameron
  • Templates and frameworks you can steal
  • Real builds, running in real businesses
Join skool.com/aiforbusiness