HubSpot MCP Server

A Model Context Protocol (MCP) server that enables AI assistants to interact with HubSpot CRM data, providing built-in vector storage and caching

Local serverstdio

What is the HubSpot MCP server?

Connect HubSpot to Claude, Cursor or any other MCP client and it stops being a tab you switch to. A Model Context Protocol (MCP) server that enables AI assistants to interact with HubSpot CRM data, providing built-in vector storage and caching mechanisms help overcome HubSpot API limitations while improving response times. The hubspot mcp server is what makes that connection.

What the server does

A Model Context Protocol (MCP) server that enables AI assistants to interact with HubSpot CRM data. This server bridges AI models with your HubSpot account, providing direct access to contacts, companies, and engagement data. Built-in vector storage and caching mechanisms help overcome HubSpot API limitations while improving response times.

  • Direct CRM Access — Connect Claude and other AI assistants to your HubSpot data without intermediary steps
  • Context Retention — Vector storage with FAISS enables semantic search across previous interactions
  • Zero Configuration — Simple Docker deployment with minimal setup

Installation

The server ships on npm as @smithery/cli, so your MCP client can launch it on demand — there is no separate build step. Add the server block to your client's configuration, restart it, and the tools register themselves.

Available tools

The toolset is worth reading before you wire it up, because it tells you what the integration is really for:

  • hubspot_create_contact — Create contacts with duplicate prevention
  • hubspot_create_company — Create companies with duplicate prevention
  • hubspot_get_company_activity — Retrieve activity for specific companies
  • hubspot_get_active_companies — Retrieve most recently active companies
  • hubspot_get_active_contacts — Retrieve most recently active contacts
  • hubspot_get_recent_conversations — Retrieve recent conversation threads with messages
  • hubspot_search_data — Semantic search across previously retrieved HubSpot data
  • Prerequisites — You'll need a HubSpot access token with these scopes: - crm.objects.contacts (read/write) - crm.objects.companies (read/write) - sales-email-read

Credentials and setup notes

Configuration is passed through the environment: HUBSPOT_ACCESS_TOKEN. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.

You'll need a HubSpot access token with these scopes: - crm.objects.contacts (read/write) - crm.objects.companies (read/write) - sales-email-read

Worth knowing first

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • Missing credentials fail quietly in some clients — if no tools show up, check the environment block first.
  • Keep per-call confirmation enabled while you learn its behaviour; it is the cheapest safeguard you have.

Where it fits

Plenty of file and storage access servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. HubSpot's toolset — hubspot_create_contact, hubspot_create_company, hubspot_get_company_activity and 5 more — is a fair guide to whether it matches your workflow. It is maintained by peakmojo; worth a glance at recent repository activity before you build anything load-bearing on it.

We check each listing at SyncDev against the project's documentation before it goes live — if something here drifts out of date, it is a bug worth reporting.

Available tools

ToolWhat it does
hubspot_create_contactCreate contacts with duplicate prevention
hubspot_create_companyCreate companies with duplicate prevention
hubspot_get_company_activityRetrieve activity for specific companies
hubspot_get_active_companiesRetrieve most recently active companies
hubspot_get_active_contactsRetrieve most recently active contacts
hubspot_get_recent_conversationsRetrieve recent conversation threads with messages
hubspot_search_dataSemantic search across previously retrieved HubSpot data
PrerequisitesYou'll need a HubSpot access token with these scopes: - crm.objects.contacts (read/write) - crm.objects.companies (read/write) - sales-email-read

How to install the HubSpot MCP server

{
  "mcpServers": {
    "hubspot-peakmojo": {
      "command": "npx",
      "args": ["-y", "@smithery/cli"],
      "env": {
        "HUBSPOT_ACCESS_TOKEN": "your-value"
      }
    }
  }
}

Add to claude_desktop_config.json, then restart Claude Desktop.

Configuration

You'll need a HubSpot access token with these scopes: - crm.objects.contacts (read/write) - crm.objects.companies (read/write) - sales-email-read

VariableDescriptionRequired
HUBSPOT_ACCESS_TOKENCredential the server authenticates with.Yes

Example prompts to try

  • Use HubSpot to hubspot create contact.
  • Use HubSpot to hubspot create company.
  • Use HubSpot to hubspot get company activity.

Frequently asked questions

The token requires crm.objects.contacts (read/write), crm.objects.companies (read/write), and sales-email-read.