hubspot-mcp
A read-only MCP server that exposes HubSpot CRM data (contacts, deals, companies, quotes) to AI agents, enabling natural language queries.
README
hubspot-mcp
Let Claude and other AI agents query your HubSpot CRM in natural language.
hubspot-mcp is a Model Context Protocol server that
exposes your HubSpot CRM — contacts, deals, companies, and quotes — to AI agents. Ask
"What deals are in the proposal stage?" or "Find the contact for acme.com" and the agent
answers from live HubSpot data.
Read-only and safe by default. The server only uses read scopes; it cannot modify your CRM.
Features
- 🔎 Search contacts, deals, companies, and quotes
- 📇 Fetch full details for any record by id (with associations)
- 🧭 List deal pipelines and stages so the agent knows valid filters
- 🔒 Read-only by design — no write scopes requested or used
- 🐍 Pure Python, built on the official MCP SDK (FastMCP)
Tools
| Tool | What it does |
|---|---|
search_contacts(query, limit) |
Search contacts by name/email/company |
get_contact(contact_id) |
Full detail for one contact |
search_deals(query, stage, limit) |
Search/filter deals by name and stage |
get_deal(deal_id) |
Full deal detail + associated contacts/company |
search_companies(query, limit) |
Search companies by name/domain |
get_company(company_id) |
Full company detail |
list_quotes(deal_id, limit) |
List quotes, optionally for one deal |
get_quote(quote_id) |
Full quote detail + line items |
get_pipeline_stages() |
List deal pipelines and their stages |
Install
Install directly from GitHub:
pip install git+https://github.com/MBAD753/hubspot-mcp
# or, isolated:
pipx install git+https://github.com/MBAD753/hubspot-mcp
A PyPI release (
pip install hubspot-mcp) is planned — see the roadmap below.
Setup
- In HubSpot, go to Settings → Integrations → Private Apps → Create a private app.
- Grant read-only scopes:
crm.objects.contacts.read,crm.objects.deals.read,crm.objects.companies.read,crm.objects.quotes.read. - Copy the access token and set it in your environment:
export HUBSPOT_ACCESS_TOKEN="pat-na1-xxxx..."
Tip: Use a free HubSpot developer/test account while evaluating — never point a tool at a production account until you trust it.
Use with Claude Code
Register the server (user scope makes it available in every project):
claude mcp add hubspot --scope user \
--env HUBSPOT_ACCESS_TOKEN=pat-naX-xxxx... \
-- hubspot-mcp
Or add it directly to your ~/.claude.json under mcpServers:
{
"mcpServers": {
"hubspot": {
"type": "stdio",
"command": "hubspot-mcp",
"env": { "HUBSPOT_ACCESS_TOKEN": "pat-naX-xxxx..." }
}
}
}
Reload the window, then ask Claude: "Use my hubspot tools — what deals do I have and what stage is each in?"
Use with Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"hubspot": {
"command": "hubspot-mcp",
"env": {
"HUBSPOT_ACCESS_TOKEN": "pat-naX-xxxx..."
}
}
}
}
Restart Claude Desktop, and the HubSpot tools appear. Try: "Search my HubSpot for deals in the proposal stage and show their amounts."
Development
git clone https://github.com/MBAD753/hubspot-mcp
cd hubspot-mcp
python -m venv .venv
.venv\Scripts\Activate.ps1 # Windows (PowerShell)
# source .venv/bin/activate # macOS / Linux
pip install -e ".[dev]"
pytest # run tests (mocked HTTP — no real API calls)
ruff check . # lint
Roadmap
- v1 (now): read-only search + fetch across contacts, deals, companies, quotes.
- v2: opt-in write operations (create contact, update deal stage, add note, create quote), gated behind an explicit environment flag and separate write scopes.
License
MIT © Marcus Bickel
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.