A CRM is only useful if people actually use it — and the friction of opening HubSpot, navigating to the right contact, and manually logging a note after every call is exactly the kind of friction that kills adoption. The HubSpot MCP server removes that friction by bringing your CRM into the conversation: look up a contact, check where a deal stands, and log a follow-up note without ever leaving Claude.

What is HubSpot?

HubSpot is a cloud-based CRM platform used by over 200,000 companies worldwide. It centralizes contacts, companies, deals, tasks, and communication history in one place, and layers on top of that a suite of marketing, sales, and service tools. HubSpot is particularly popular with SMBs and startups because the core CRM is free, with paid tiers adding automation, reporting, and advanced integrations. Its API is well-documented and supports a Private Apps model that allows third-party tools — like MCP servers — to access your data with scoped, revocable tokens.

What the HubSpot MCP Server Does

The HubSpot MCP server exposes your CRM data to Claude through a set of callable tools. Depending on the scopes you grant your Private App, Claude can:

  • Search contacts — find a contact by name, email, or company
  • Get contact by email — retrieve a full contact record including deal history and recent activity
  • List recent deals — see your pipeline sorted by recent activity or creation date
  • Check deal stage — find out where a specific deal sits in your pipeline
  • List companies — search and filter your company database
  • Log a note on a contact — add a CRM note directly from Claude
  • Create a task — set a follow-up task on any contact or deal
  • Get pipeline stages — see the stages defined in your sales pipeline

Prerequisites

You will need the following before setting up the HubSpot MCP server:

  • HubSpot account — the free CRM works. Sign up at hubspot.com.
  • HubSpot Private App — go to Settings → Integrations → Private Apps → Create a private app. Select the CRM scopes you need (contacts, deals, companies at minimum). After creating the app, copy the access token shown on the confirmation screen — you won't be able to see it again.
  • Node.js 18+ — verify with node --version.
  • Claude Desktop — installed and signed in at claude.ai/download.

How to Install the HubSpot MCP Server

  1. Create your HubSpot Private App (if you haven't already). In HubSpot: Settings → Integrations → Private Apps → Create a private app. Add a name and description, then on the Scopes tab select the relevant CRM read/write scopes. Save and copy the access token.
  2. Open your Claude Desktop config file. macOS: ~/Library/Application Support/Claude/claude_desktop_config.json. Windows: %APPDATA%\Claude\claude_desktop_config.json.
  3. Add the HubSpot MCP server entry to the mcpServers object using the config below.
  4. Paste your access token as the value for HUBSPOT_ACCESS_TOKEN.
  5. Save the file and fully quit Claude Desktop.
  6. Relaunch Claude Desktop. The hammer icon in the chat input confirms MCP tools are loaded.
  7. Test with: "Look up the contact [an email you know is in HubSpot]." Claude should return the contact's details.

Configuration JSON

Add this entry to your claude_desktop_config.json file:

{
  "mcpServers": {
    "hubspot": {
      "command": "npx",
      "args": ["-y", "@hubspot/mcp-server"],
      "env": {
        "HUBSPOT_ACCESS_TOKEN": "pat-na1-your-token-here"
      }
    }
  }
}
Replace pat-na1-your-token-here with the actual access token from your HubSpot Private App.

Real Use Cases

Five ways to use the HubSpot MCP server in everyday sales and CRM work:

  1. "Look up the contact john@example.com and tell me their deal history" — Claude retrieves the contact record and associated deals, giving you a quick brief before a sales call. No tab switching required.
  2. "Show me all deals in the 'Proposal Sent' stage" — Claude queries your pipeline by stage and returns a list. Useful for pipeline reviews without building a filter in HubSpot's UI every time.
  3. "Log a note on contact Sarah Johnson: called today, following up next Tuesday" — Claude logs the note directly to the CRM. Post-call logging takes seconds instead of minutes.
  4. "How many new contacts did we add this week?" — Claude runs a date-filtered query on your contacts and returns the count. Great for weekly reporting without exporting a CSV.
  5. "List all companies in the Technology industry with over 100 employees" — Claude filters your company database and returns a targeted list. Useful for prospecting or territory reviews.

Pros

  • CRM queries in natural language are far faster than HubSpot's filter UI. Building a filtered view in HubSpot requires several clicks and field selections; asking Claude takes one sentence.
  • Great for sales prep. Look up a contact's deal history and last activity in seconds before jumping on a call — no need to open HubSpot and navigate to the record.
  • Log notes without switching apps. If you're already working in Claude, you can dictate a note and have it logged to the CRM without breaking your flow.
  • Works with the free tier. No paid HubSpot plan needed for basic contact and deal queries.

Cons and Limitations

  • Private App setup takes 15-20 minutes. Creating a Private App, selecting the right scopes, and copying the token is a one-time process but not instant. Follow the steps carefully to avoid scope errors.
  • Write operations have varying support. Creating contacts and logging notes typically works well; updating deal stages or more complex workflow-based operations may not be fully supported depending on the package version.
  • Complex multi-object queries can be slow. Queries that span contacts, deals, and companies simultaneously may take a few seconds as the MCP server makes multiple API calls to HubSpot.

Frequently Asked Questions

Yes. HubSpot's free CRM tier gives you access to contacts, deals, companies, and pipeline data, all of which the MCP server can query. You will need to create a Private App under Settings → Integrations → Private Apps, which is available on the free tier. The access token from that private app is what you pass to the MCP server.

Write capabilities depend on the specific MCP server package version and which CRM scopes you grant your Private App. Many implementations support creating contacts and logging notes. Deal stage updates and other write operations may have varying support — check the package documentation for the current list of supported tools.

In HubSpot, go to Settings (gear icon) → Integrations → Private Apps → Create a private app. Give it a name, then on the Scopes tab select the CRM scopes you need: crm.objects.contacts.read, crm.objects.deals.read, crm.objects.companies.read, and any write scopes if needed. Click Create App and copy the access token shown — this is your HUBSPOT_ACCESS_TOKEN.

HubSpot publishes an official MCP server package (@hubspot/mcp-server) on npm. This is maintained by HubSpot and uses the official HubSpot API. Always prefer the official package over third-party alternatives for security and API compatibility.