
Hubspot
shinzo-labs
README
HubSpot MCP
A Model Context Protocol (MCP) implementation for the HubSpot API, providing a standardized interface for accessing and managing CRM data.
Features
- Complete coverage of the HubSpot CRM API
- Support for all standard CRM objects (companies, contacts, deals, etc.)
- Advanced association management with CRM Associations v4
- Company-specific endpoints with property validation
- Batch operations for efficient data management
- Advanced search and filtering capabilities
- Type-safe parameter validation with Zod
Installation
⚠️ <strong>NOTE:</strong> Due to the large number of endpoints available on this server, it is recommended that you install and setup Heimdall to limit the number of endpoints exposed to your client applications.
If you don't have an API key, follow the steps here to obtain an access token.
NPX (Recommended)
Add the following to your MCP client config.json
(~/.heimdall/config.json
if using Heimdall):
{
"mcpServers": {
"hubspot": {
"command": "npx",
"args": [
"@shinzolabs/hubspot-mcp"
],
"env": {
"HUBSPOT_ACCESS_TOKEN": "your-token-here"
}
}
}
}
Manual Download
- Download the repo:
git clone https://github.com/shinzo-labs/hubspot-mcp.git
- Install packages (inside cloned repo):
pnpm i
- Add the following to your MCP client
config.json
(~/.heimdall/config.json
if using Heimdall):
{
"mcpServers": {
"hubspot": {
"command": "node",
"args": [
"/path/to/hubspot-mcp/index.js"
],
"env": {
"HUBSPOT_ACCESS_TOKEN": "your-token-here"
}
}
}
}
Smithery
To install for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @shinzo-labs/hubspot-mcp --client claude
API Operations
Core CRM Objects
Basic Object Operations
crm_list_objects
: List CRM objects with optional filtering and paginationcrm_get_object
: Get a single CRM object by IDcrm_create_object
: Create a new CRM objectcrm_update_object
: Update an existing CRM objectcrm_delete_object
: Delete a CRM object
Search and Batch Operations
crm_search_objects
: Search CRM objects using advanced filterscrm_batch_create_objects
: Create multiple objects in a single requestcrm_batch_update_objects
: Update multiple objects in a single requestcrm_batch_delete_objects
: Delete multiple objects in a single request
CRM Records Management
Companies
- Basic Operations:
crm_create_company
: Create a new company with validated propertiescrm_update_company
: Update an existing companycrm_get_company
: Get a single company by IDcrm_search_companies
: Search companies with specific filters
- Batch Operations:
crm_batch_create_companies
: Create multiple companies in a single requestcrm_batch_update_companies
: Update multiple companies in a single request
- Property Management:
crm_get_company_properties
: Get all available company propertiescrm_create_company_property
: Create a new company property
Contacts
- Basic Operations:
crm_create_contact
: Create a new contact with validated propertiescrm_update_contact
: Update an existing contact's informationcrm_get_contact
: Get a single contact by IDcrm_search_contacts
: Search contacts with specific filters
- Batch Operations:
crm_batch_create_contacts
: Create multiple contacts in a single requestcrm_batch_update_contacts
: Update multiple contacts in a single request
- Property Management:
crm_get_contact_properties
: Get all available contact propertiescrm_create_contact_property
: Create a new contact property
Leads
- Basic Operations:
crm_create_lead
: Create a new lead with validated propertiescrm_update_lead
: Update an existing lead's informationcrm_get_lead
: Get a single lead by IDcrm_search_leads
: Search leads with specific filters
- Batch Operations:
crm_batch_create_leads
: Create multiple leads in a single requestcrm_batch_update_leads
: Update multiple leads in a single request
- Property Management:
crm_get_lead_properties
: Get all available lead propertiescrm_create_lead_property
: Create a new lead property
Engagement Management
Engagement Details
- Basic Operations:
engagement_details_get
: Get details of a specific engagementengagement_details_create
: Create a new engagementengagement_details_update
: Update an existing engagementengagement_details_delete
: Delete an engagementengagement_details_list
: List all engagements with filteringengagement_details_get_associated
: Get associated engagements
Calls
- Basic Operations:
calls_create
: Create a new call recordcalls_get
: Get call detailscalls_update
: Update a call recordcalls_archive
: Archive a callcalls_list
: List all callscalls_search
: Search calls
- Batch Operations:
calls_batch_create
: Create multiple callscalls_batch_read
: Read multiple callscalls_batch_update
: Update multiple callscalls_batch_archive
: Archive multiple calls
Emails
- Basic Operations:
emails_create
: Create a new email recordemails_get
: Get email detailsemails_update
: Update an emailemails_archive
: Archive an emailemails_list
: List all emailsemails_search
: Search emails
- Batch Operations:
emails_batch_create
: Create multiple emailsemails_batch_read
: Read multiple emailsemails_batch_update
: Update multiple emailsemails_batch_archive
: Archive multiple emails
Meetings
- Basic Operations:
meetings_create
: Create a new meetingmeetings_get
: Get meeting detailsmeetings_update
: Update a meetingmeetings_delete
: Delete a meetingmeetings_list
: List all meetingsmeetings_search
: Search meetings
- Batch Operations:
meetings_batch_create
: Create multiple meetingsmeetings_batch_update
: Update multiple meetingsmeetings_batch_archive
: Archive multiple meetings
Notes
- Basic Operations:
notes_create
: Create a new notenotes_get
: Get note detailsnotes_update
: Update a notenotes_archive
: Archive a notenotes_list
: List all notesnotes_search
: Search notes
- Batch Operations:
notes_batch_create
: Create multiple notesnotes_batch_read
: Read multiple notesnotes_batch_update
: Update multiple notesnotes_batch_archive
: Archive multiple notes
Tasks
- Basic Operations:
tasks_create
: Create a new tasktasks_get
: Get task detailstasks_update
: Update a tasktasks_archive
: Archive a tasktasks_list
: List all taskstasks_search
: Search tasks
- Batch Operations:
tasks_batch_create
: Create multiple taskstasks_batch_read
: Read multiple taskstasks_batch_update
: Update multiple taskstasks_batch_archive
: Archive multiple tasks
Associations and Relationships
CRM Associations v4
- Basic Operations:
crm_list_association_types
: List available association typescrm_get_associations
: Get all associations between objectscrm_create_association
: Create an associationcrm_delete_association
: Delete an association
- Batch Operations:
crm_batch_create_associations
: Create multiple associationscrm_batch_delete_associations
: Delete multiple associations
Communication Preferences
Subscription Management
- Basic Operations:
communications_get_preferences
: Get contact preferencescommunications_update_preferences
: Update contact preferencescommunications_unsubscribe_contact
: Global unsubscribecommunications_subscribe_contact
: Global subscribecommunications_get_subscription_definitions
: Get subscription definitions
- Bulk Operations:
communications_get_subscription_status
: Get status for multiple contactscommunications_update_subscription_status
: Update status for multiple contacts
Contributing
Contributions are welcomed and encouraged. Contact austin@shinzolabs.com with any questions, comments or concerns.
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.
MCP Package Docs Server
Facilitates LLMs to efficiently access and fetch structured documentation for packages in Go, Python, and NPM, enhancing software development with multi-language support and performance optimization.
Claude Code MCP
An implementation of Claude Code as a Model Context Protocol server that enables using Claude's software engineering capabilities (code generation, editing, reviewing, and file operations) through the standardized MCP interface.
@kazuph/mcp-taskmanager
Model Context Protocol server for Task Management. This allows Claude Desktop (or any MCP client) to manage and execute tasks in a queue-based system.
Linear MCP Server
Enables interaction with Linear's API for managing issues, teams, and projects programmatically through the Model Context Protocol.
mermaid-mcp-server
A Model Context Protocol (MCP) server that converts Mermaid diagrams to PNG images.
Jira-Context-MCP
MCP server to provide Jira Tickets information to AI coding agents like Cursor

Linear MCP Server
A Model Context Protocol server that integrates with Linear's issue tracking system, allowing LLMs to create, update, search, and comment on Linear issues through natural language interactions.

Sequential Thinking MCP Server
This server facilitates structured problem-solving by breaking down complex issues into sequential steps, supporting revisions, and enabling multiple solution paths through full MCP integration.