LABSCO SUMMARY
CRM writes from chat — once Nango is standing.
The HubSpot side is ordinary and well covered: create a company, find a contact, fix a phone number, add someone to a list. The step that decides whether this works for you is Nango: there is no path here that takes a HubSpot token directly, so you need a working Nango integration and connection before the first call succeeds. Set the scopes on the HubSpot app first, because a missing scope surfaces later as an authentication failure rather than a clear message.
What it is
A Python MCP server for HubSpot CRM. Instead of holding a HubSpot token itself, it authenticates through a Nango connection, so the credentials in your client config are Nango's.
What you get
- Companies: create, update and delete, search by domain or other criteria, and see recent activity
- Contacts: create, update and delete, search by email, name or phone
- List membership management, so a contact can be added to a list from the conversation
- Recent-activity tracking on both objects, for "what changed this month" questions
- Bulk operations with filters, rather than one record at a time
Requirements
Python 3.8+ and uvx. In HubSpot, create an app and enable the crm.objects.companies.read/write, crm.objects.contacts.read/write and crm.lists.read/write scopes. Then supply four Nango values in the client env: NANGO_BASE_URL, NANGO_SECRET_KEY, NANGO_CONNECTION_ID and NANGO_INTEGRATION_ID. The client runs it straight from the GitHub repo with uvx.
Setup effort
One command plus a key — uvx git+https://github.com/Shameerpc5029/hubspot-mcp.git, then supply credentials
USE CASES
01
Filing a new lead from a conversation
Create the company with its domain and the contact against it, without opening HubSpot.
02
Fixing bad contact data
Find the contact by email and update the field that is wrong.
03
Building a segment for a campaign
Search contacts by the criteria you want and add the matches to a list.
BEFORE YOU INSTALL
What to know first
Requires
- uvx on PATH
- Python 3.8+
- NANGO_BASE_URL in your environment
- NANGO_SECRET_KEY in your environment
- NANGO_CONNECTION_ID in your environment
- NANGO_INTEGRATION_ID in your environment
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
Server setup
TERMINAL
uvx git+https://github.com/Shameerpc5029/hubspot-mcp.gitMCP Clients
Claude Desktop
CLAUDE DESKTOP · JSON
{
"mcpServers": {
"hubspot": {
"command": "uvx",
"args": [
"git+https://github.com/Shameerpc5029/hubspot-mcp.git"
],
"env": {
"NANGO_BASE_URL": "<YOUR_NANGO_BASE_URL>",
"NANGO_SECRET_KEY": "<YOUR_NANGO_SECRET_KEY>",
"NANGO_CONNECTION_ID": "<YOUR_NANGO_CONNECTION_ID>",
"NANGO_INTEGRATION_ID": "<YOUR_NANGO_INTEGRATION_ID>"
}
}
}
}