About
HubSpot MCP is a comprehensive Model Context Protocol server implementation that provides seamless access to the HubSpot CRM API, enabling AI assistants to manage customer relationship data programmatically. Key features of HubSpot MCP: - Full coverage of the HubSpot CRM API including companies, contacts, deals, and custom objects - Advanced association management using HubSpot's CRM Associations v4 API - Batch operations for efficient bulk data processing - Company-specific endpoints with built-in property validation - Powerful search and filtering capabilities for precise data retrieval - Type-safe parameter validation using Zod schema validation - Support for standard CRM operations like create, read, update, and delete
Tools 112
crm_create_companyCreate a new company with validated properties
crm_update_companyUpdate an existing company with validated properties
crm_get_companyGet a single company by ID with specific properties and associations
crm_search_companiesSearch companies with company-specific filters
crm_batch_create_companiesCreate multiple companies in a single request
crm_batch_update_companiesUpdate multiple companies in a single request
crm_get_company_propertiesGet all properties for companies
crm_create_company_propertyCreate a new company property
crm_list_objectsList CRM objects of a specific type with optional filtering and pagination
crm_get_objectGet a single CRM object by ID
crm_create_objectCreate a new CRM object
crm_update_objectUpdate an existing CRM object
crm_archive_objectArchive (delete) a CRM object
crm_search_objectsSearch CRM objects using filters
crm_batch_create_objectsCreate multiple CRM objects in a single request
crm_batch_read_objectsCreate multiple CRM objects in a single request
crm_batch_update_objectsUpdate multiple CRM objects in a single request
crm_batch_archive_objectsArchive (delete) multiple CRM objects in a single request
crm_list_association_typesList all available association types for a given object type pair
crm_get_associationsGet all associations of a specific type between objects
crm_create_associationCreate an association between two objects
crm_archive_associationArchive (delete) an association between two objects
crm_batch_create_associationsCreate multiple associations in a single request
crm_batch_archive_associationsArchive (delete) multiple associations in a single request
crm_create_contactCreate a new contact with validated properties
crm_update_contactUpdate an existing contact with validated properties
crm_get_contactGet a single contact by ID with specific properties and associations
crm_search_contactsSearch contacts with contact-specific filters
crm_batch_create_contactsCreate multiple contacts in a single request
crm_batch_update_contactsUpdate multiple contacts in a single request
crm_get_contact_propertiesGet all properties for contacts
crm_create_contact_propertyCreate a new contact property
crm_create_leadCreate a new lead with validated properties
crm_update_leadUpdate an existing lead with validated properties
crm_get_leadGet a single lead by ID with specific properties and associations
crm_search_leadsSearch leads with lead-specific filters
crm_batch_create_leadsCreate multiple leads in a single request
crm_batch_update_leadsUpdate multiple leads in a single request
crm_get_lead_propertiesGet all properties for leads
crm_create_lead_propertyCreate a new lead property
meetings_listList all meetings with optional filtering
meetings_getGet details of a specific meeting
meetings_createCreate a new meeting
meetings_updateUpdate an existing meeting
meetings_archiveArchive (delete) a meeting
meetings_searchSearch meetings with specific filters
meetings_batch_createCreate multiple meetings in a single request
meetings_batch_updateUpdate multiple meetings in a single request
meetings_batch_archiveArchive (delete) multiple meetings in a single request
notes_createCreate a new note
notes_getGet details of a specific note
notes_updateUpdate an existing note
notes_archiveArchive (delete) a note
notes_listList all notes with optional filtering
notes_searchSearch notes with specific filters
notes_batch_createCreate multiple notes in a single request
notes_batch_readRead multiple notes in a single request
notes_batch_updateUpdate multiple notes in a single request
notes_batch_archiveArchive (delete) multiple notes in a single request
tasks_createCreate a new task
tasks_getGet details of a specific task
tasks_updateUpdate an existing task
tasks_archiveArchive (delete) a task
tasks_listList all tasks with optional filtering
tasks_searchSearch tasks with specific filters
tasks_batch_createCreate multiple tasks in a single request
tasks_batch_readRead multiple tasks in a single request
tasks_batch_updateUpdate multiple tasks in a single request
tasks_batch_archiveArchive (delete) multiple tasks in a single request
engagement_details_getGet details of a specific engagement
engagement_details_createCreate a new engagement with details
engagement_details_updateUpdate an existing engagement's details
engagement_details_listList all engagements with optional filtering
engagement_details_archiveArchive (delete) an engagement
engagement_details_get_associatedGet all engagements associated with an object
calls_createCreate a new call record
calls_getGet details of a specific call
calls_updateUpdate an existing call record
calls_archiveArchive (delete) a call record
calls_listList all calls with optional filtering
calls_searchSearch calls with specific filters
calls_batch_createCreate multiple call records in a single request
calls_batch_readRead multiple call records in a single request
calls_batch_updateUpdate multiple call records in a single request
calls_batch_archiveArchive (delete) multiple call records in a single request
emails_createCreate a new email record
emails_getGet details of a specific email
emails_updateUpdate an existing email record
emails_archiveArchive (delete) an email record
emails_listList all emails with optional filtering
emails_searchSearch emails with specific filters
emails_batch_createCreate multiple email records in a single request
emails_batch_readRead multiple email records in a single request
emails_batch_updateUpdate multiple email records in a single request
emails_batch_archiveArchive (delete) multiple email records in a single request
communications_get_preferencesGet communication preferences for a contact
communications_update_preferencesUpdate communication preferences for a contact
communications_unsubscribe_contactUnsubscribe a contact from all email communications
communications_subscribe_contactSubscribe a contact to all email communications
communications_get_subscription_definitionsGet all subscription definitions for the portal
communications_get_subscription_statusGet subscription status for multiple contacts
communications_update_subscription_statusUpdate subscription status for multiple contacts
products_listRead a page of products. Control what is returned via the `properties` query param. `after` is the paging cursor token of the last successfully read resource will be returned as the `paging.next.after` JSON property of a paged response containing more results.
products_readRead an Object identified by ID
products_createCreate a product with the given properties and return a copy of the object, including the ID.
products_updatePerform a partial update of an Object identified by ID. Read-only and non-existent properties will result in an error. Properties values can be cleared by passing an empty string.
products_archiveMove an Object identified by ID to the recycling bin.
products_searchSearch products
products_batch_archiveArchive (delete) a batch of products by ID
products_batch_createCreate a batch of products
products_batch_readRead a batch of products by internal ID, or unique property values. Retrieve records by the `idProperty` parameter to retrieve records by a custom unique value property.
products_batch_updateUpdate a batch of products by internal ID, or unique values specified by the `idProperty` query param.
README
HubSpot MCP Server
A Model Context Protocol (MCP) server implementation for the HubSpot API, providing a standardized interface for accessing and managing CRM data.
Features
Prerequisites
If you don't have an API key, follow the steps here to obtain an access token. OAuth support is planned as a future enhancement.
Client Configuration
There are several options to configure your MCP client with the server. For hosted/remote server setup, use Smithery's CLI with a Smithery API Key. For local installation, use npx or build from source. Each of these options is explained below.
Smithery Remote Server (Recommended)
To add a remote server to your MCP client config.json, run the following command from Smithery CLI:
npx -y @smithery/cli install @shinzo-labs/hubspot-mcp
Enter your HUBSPOT_ACCESS_TOKEN when prompted.
Smithery SDK
If you are developing your own agent application, you can use the boilerplate code here.
NPX Local Install
To install the server locally with npx, add the following to your MCP client config.json:
{
"mcpServers": {
"hubspot": {
"command": "npx",
"args": [
"@shinzolabs/hubspot-mcp"
],
"env": {
"HUBSPOT_ACCESS_TOKEN": "your-access-token-here"
}
}
}
}
Build from Source
1. Download the repo:
git clone https://github.com/shinzo-labs/hubspot-mcp.git
2. Install packages (inside cloned repo):
pnpm i
3. Add the following to your MCP client config.json:
{
"mcpServers": {
"hubspot": {
"command": "node",
"args": [
"/path/to/hubspot-mcp/index.js"
],
"env": {
"HUBSPOT_ACCESS_TOKEN": "your-access-token-here"
}
}
}
}
Config Variables
| Variable | Description | Required? | Default |
|------------------------|-------------------------------------------|-----------|---------|
| HUBSPOT_ACCESS_TOKEN | Access Token for Hubspot Application | Yes | |
| PORT | Port for Streamable HTTP transport method | No | 3000 |
| TELEMETRY_ENABLED | Enable telemetry | No | true |
Supported Tools
Core CRM Objects
- crm_list_objects: List CRM objects with optional filtering and pagination
- crm_get_object: Get a single CRM object by ID
- crm_create_object: Create a new CRM object
- crm_update_object: Update an existing CRM object
- crm_archive_object: Archive (delete) a CRM object
- crm_search_objects: Search CRM objects using advanced filters
- crm_batch_create_objects: Create multiple objects in a single request
- crm_batch_read_objects: Read multipl objects in a single request
- crm_batch_update_objects: Update multiple objects in a single request
- crm_batch_archive_objects: Archive (delete) multiple objects in a single request
Companies
- crm_create_company: Create a new company with validated properties
- crm_update_company: Update an existing company
- crm_get_company: Get a single company by ID
- crm_search_companies: Search companies with
Related MCP Servers
AI Research Assistant
hamid-vakilzadeh
AI Research Assistant provides comprehensive access to millions of academic papers through the Semantic Scholar and arXiv databases. This MCP server enables AI coding assistants to perform intelligent literature searches, citation network analysis, and paper content extraction without requiring an API key. Key features include: - Advanced paper search with multi-filter support by year ranges, citation thresholds, field of study, and publication type - Title matching with confidence scoring for finding specific papers - Batch operations supporting up to 500 papers per request - Citation analysis and network exploration for understanding research relationships - Full-text PDF extraction from arXiv and Wiley open-access content (Wiley TDM token required for institutional access) - Rate limits of 100 requests per 5 minutes with options to request higher limits through Semantic Scholar
Linkup
LinkupPlatform
Linkup is a real-time web search and content extraction service that enables AI assistants to search the web and retrieve information from trusted sources. It provides source-backed answers with citations, making it ideal for fact-checking, news gathering, and research tasks. Key features of Linkup: - Real-time web search using natural language queries to find current information, news, and data - Page fetching to extract and read content from any webpage URL - Search depth modes: Standard for direct-answer queries and Deep for complex research across multiple sources - Source-backed results with citations and context from relevant, trustworthy websites - JavaScript rendering support for accessing dynamic content on JavaScript-heavy pages
Math-MCP
EthanHenrickson
Math-MCP is a computation server that enables Large Language Models (LLMs) to perform accurate numerical calculations through the Model Context Protocol. It provides precise mathematical operations via a simple API to overcome LLM limitations in arithmetic and statistical reasoning. Key features of Math-MCP: - Basic arithmetic operations: addition, subtraction, multiplication, division, modulo, and bulk summation - Statistical analysis functions: mean, median, mode, minimum, and maximum calculations - Rounding utilities: floor, ceiling, and nearest integer rounding - Trigonometric functions: sine, cosine, tangent, and their inverses with degrees and radians conversion support