
HubSpot Local MCP Server: Setup for Claude, Cursor and Other Apps
@hubspot/mcp-serverLets your assistant look up and update HubSpot contacts, companies, deals and tickets, using a private app token on your computer.
This is the older, local HubSpot server from HubSpot, released as a beta. It runs on your computer and signs in with a private app access token that you create in HubSpot. HubSpot now also offers a hosted server that signs you in with your HubSpot account. Use this local one if you want a token with only the permissions you pick.
Good for
- Sales and ops teams who want CRM lookups and notes from their assistant
- HubSpot admins who want a token with narrow, read-only permissions
- Developers who build on HubSpot and want to read workflows and properties
Works in
12 should work
Tap an app to see how to set it up and any known problems.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Client does not support this transport.
Client does not support this transport.
Install @hubspot/mcp-server
Claude Code
- 1
Copy this prompt.
Add the @hubspot/mcp-server server to Claude Code. Run this command: claude mcp add hubspot -e PRIVATE_APP_ACCESS_TOKEN=<your-private-app-access-token> -- npx -y @hubspot/mcp-server Ask me for PRIVATE_APP_ACCESS_TOKEN and only put the values in that config, nowhere else. Then check that it loaded and tell me if I need to sign in or restart.
- 2
Paste it into Claude Code. It shows the change and asks before running it.
Requires Node.js.
Read-only mode: Give the HubSpot private app only read scopes.
Create the private app first and copy its token. Start with read-only scopes. The README names the variable PRIVATE_APP_ACCESS_TOKEN.
From the project README. Source.
Tools
Shows which account and scopes the token has
Checks the token and returns user, hub and scope details.
Try: “Which HubSpot account and permissions am I using?”
Network ·
hubspot-get-user-detailsSearches CRM records with filters
Searches CRM records using filters on properties.
Try: “Find deals in the "Decision maker bought in" stage worth over $1,000.”
Network ·
hubspot-search-objectsLists CRM records of one type
Returns a page of records for an object type such as contacts or deals.
Try: “List my recent contacts.”
Network ·
hubspot-list-objectsReads several records by ID
Reads many CRM records in one call.
Try: “Get these five companies by ID.”
Network ·
hubspot-batch-read-objectsCreates several records at once
Creates many CRM records of one type in one call.
Try: “Create contacts for these three people.”
Write ·
hubspot-batch-create-objectsUpdates several records at once
Updates many existing CRM records in one call.
Try: “Update the address for John Smith.”
Write ·
hubspot-batch-update-objectsLists custom object types
Returns custom object schemas with their IDs and definitions.
Try: “What custom objects do we have in HubSpot?”
Network ·
hubspot-get-schemasLists the fields on a record type
Returns the properties defined for a CRM object type.
Try: “What properties does a deal have?”
Network ·
hubspot-list-propertiesShows one field's details
Gets the definition of one property.
Try: “Show the details of the lifecycle stage property.”
Network ·
hubspot-get-propertyAdds a custom field
Creates a custom property for a CRM object type.
Try: “Add a custom text property "Renewal notes" to companies.”
Write ·
hubspot-create-propertyEdits a custom field
Updates settings on an existing custom property.
Try: “Rename the "Renewal notes" property.”
Write ·
hubspot-update-propertyShows linked records
Lists records associated with a given record.
Try: “List the contacts associated with Acme Inc.”
Network ·
hubspot-list-associationsLists valid link types between records
Returns the association types and labels allowed between two object types.
Try: “What link types exist between contacts and companies?”
Network ·
hubspot-get-association-definitionsLinks records together
Creates many associations between records of different types.
Try: “Associate John Smith with Acme Inc. as a company.”
Write ·
hubspot-batch-create-associationsAdds a note or task to a record
Creates a note or task linked to contacts, companies, deals or tickets.
Try: “Add a task to send a thank-you note to jane@example.com.”
Write ·
hubspot-create-engagementReads a note or task
Gets an engagement by ID.
Try: “Show me that task.”
Network ·
hubspot-get-engagementEdits a note or task
Updates an existing engagement.
Try: “Move that task to Friday.”
Write ·
hubspot-update-engagementLists your workflows
Returns a page of workflows.
Try: “List my HubSpot workflows.”
Network ·
hubspot-list-workflowsShows one workflow
Gets a workflow with its actions, enrollment rules and schedule.
Try: “Show me how the onboarding workflow works.”
Network ·
hubspot-get-workflowMakes a link to a record in HubSpot
Generates a HubSpot URL that opens a record in the app.
Try: “Give me a link to the Acme Inc. company record.”
Read ·
hubspot-get-linkMakes a link for tool feedback
Generates a link for reporting issues with the tools.
Try: “I want to send feedback on these tools.”
Read ·
hubspot-generate-feedback-link
Read from the source code
Permissions
medium risk · 3 things to watch
Medium risk
It can create and update CRM records, properties, associations and engagements in your HubSpot account, and the listed tools include no delete. Create the private app with read-only scopes first and add write scopes only if you need them.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only modeHow to turn it on
Watch out for
It can change real customer records
Batch tools can update many contacts, companies or deals at once. Check the plan before you approve a batch.
It can create and edit custom properties
Property tools change your CRM schema, which affects forms and reports. Leave those scopes off if you do not need them.
It is a beta
The README says the server is in beta and subject to HubSpot's Early Adopter Program terms.
Security advisories
No published security advisories as of Nov 1, 2026.
Technical details
| Turning on read-only | Create the private app with read-only scopes; the README suggests starting with them. |
|---|---|
| Talks to | HubSpot API |
| Scopes |
|
Questions
How is this different from the hosted HubSpot server?
This one runs on your computer and uses a private app token with scopes you choose. The hosted HubSpot server is run by HubSpot and signs you in with your HubSpot account.
Is it official?
Yes. It is published by HubSpot on npm, and HubSpot calls it a beta.
Do I need an API key?
Yes. Create a private app in HubSpot under Settings, Integrations, Private Apps, then copy its access token.
Can I run it read-only?
Yes, through the token. The README suggests starting with read-only scopes on the private app.
Can it delete records?
No delete tool is listed. It can create and update records, properties and associations.
Which apps does it work with?
The README gives setup for Claude Desktop and Cursor. Any app that can start a local server should work.
Information
updated Nov 2, 2026
- Publisher
- HubSpot (official)
- Package
@hubspot/mcp-server- Registry
- npm
- Transport
- stdio
- Auth
- token in env
- Version
- 0.4.0
- License
- MIT
Other HubSpot MCP servers
Sources
Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.
Show all 1Hide
- @hubspot/mcp-server on npm · npmjs.com