
HubSpot
Connects to HubSpot CRM API to manage companies, contacts, deals, and other CRM objects through natural language commands. Lets sales teams query and update CRM data without switching applications.
Integrates with HubSpot CRM API for managing companies, contacts, deals, and other CRM objects through natural language, enabling sales teams to query, create, and update records without leaving their assistant interface.
What it does
- Query HubSpot companies, contacts, and deals
- Create new CRM records
- Update existing CRM objects
- Manage associations between CRM entities
- Perform batch operations on CRM data
- Search and filter CRM records
Best for
About HubSpot
HubSpot is a community-built MCP server published by shinzo-labs that provides AI assistants with tools and capabilities via the Model Context Protocol. Seamlessly manage your HubSpot CRM system: query, create, and update records through natural language with full HubSpot It is categorized under productivity, developer tools.
How to install
You can install HubSpot in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.
License
HubSpot is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.
A Model Context Protocol (MCP) server 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
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
- 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:
{
"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 paginationcrm_get_object: Get a single CRM object by IDcrm_create_object: Create a new CRM objectcrm_update_object: Update an existing CRM objectcrm_archive_object: Archive (delete) a CRM objectcrm_search_objects: Search CRM objects using advanced filterscrm_batch_create_objects: Create multiple objects in a single requestcrm_batch_read_objects: Read multipl objects in a single requestcrm_batch_update_objects: Update multiple objects in a single requestcrm_batch_archive_objects: Archive (delete) multiple objects in a single request
Companies
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 filterscrm_batch_create_companies: Create multiple companies in a single requestcrm_batch_update_companies: Update multiple companies in a single requestcrm_get_company_properties: Get all available company propertiescrm_create_company_property: Create a new company property
Contacts
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 filterscrm_batch_create_contacts: Create multiple contacts in a single requestcrm_batch_update_contacts: Update multiple contacts in a single requestcrm_get_contact_properties: Get all available contact propertiescrm_create_contact_property: Create a new contact property
Leads
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 filterscrm_batch_create_leads: Create multiple leads in a single requestcrm_batch_update_leads: Update multiple leads in a single requestcrm_get_lead_properties: Get all available lead propertiescrm_create_lead_property: Create a new lead property
Engagement Management
engagement_details_get: Get details of a specific engagementengagement_details_create: Create a new engagementengagement_details_update: Update an existing engagementengagement_details_archive: Archive (delete) an engagementengagement_details_list: List all engagements with filteringengagement_details_get_associated: Get associated engagements
Calls
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 callscalls_batch_create: Create multiple callscalls_batch_read: Read multiple callscalls_batch_update: Update multiple callscalls_batch_archive: Archive multiple calls
Emails
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 emailsemails_batch_create: Create multiple emailsemails_batch_read: Read multiple emailsemails_batch_update: Update multiple emailsemails_batch_archive: Archive multiple emails
Meetings
meetings_create: Create a new meetingmeetings_get: Get meeting detailsmeetings_update: Update a meetingmeetings_archive: Archive (delete) a meetingmeetings_list: List all meetingsmeetings_search: Search meetingsmeetings_batch_create: Create multiple meetingsmeetings_batch_update: Update multiple meetingsmeetings_batch_archive: Archive multiple meetings
Notes
notes_create: Create a new notenotes_get: Get note detailsnotes_update: Update a notenotes_archive: Archive a notenotes_list: List all notesnotes_search: Search notesnotes_batch_create: Create multiple notesnotes_batch_read: Read multiple notesnotes_batch_update: Update multiple notesnotes_batch_archive: Archive multiple notes
Tasks
tasks_create: Create a new tasktasks_get: Get task detailstasks_update: Update a tasktasks_archive: Archive a tasktasks_list: List all taskstasks_search: Search taskstasks_batch_create: Create multiple taskstasks_batch_read: Read multiple taskstasks_batch_update: Update multiple taskstasks_batch_archive: Archive multiple tasks
Associations and Relationships
crm_list_association_types: List available association typescrm_get_associations: Get all associations between objectscrm_create_association: Create an associationcrm_archive_association: Archive (delete) an associationcrm_batch_create_associations: Create multiple associationscrm_batch_archive_associations: Archive (delete) multiple associations
Communication Preferences
communications_get_preferences: Get contact preferencescommunications_update_preferences: Update contact preferencescommunications_unsubscribe_contact: Global unsubscribecommunications_subscribe_contact: Global subscribecommunications_get_subscription_definitions: Get subscription definitionscommunications_get_subscription_status: Get status for multiple contactscommunications_update_subscription_status: Update status for multiple contacts
Products
products_create: Create a product with the given properties and return a copy of the object, including the ID.
README truncated. View full README on GitHub.
Alternatives
Related Skills
Browse all skillsUI design system toolkit for Senior UI Designer including design token generation, component documentation, responsive design calculations, and developer handoff tools. Use for creating design systems, maintaining visual consistency, and facilitating design-dev collaboration.
Guide for building TypeScript CLIs with Bun. Use when creating command-line tools, adding subcommands to existing CLIs, or building developer tooling. Covers argument parsing, subcommand patterns, output formatting, and distribution.
PERSONAL APP ARCHITECT - Strategic development orchestrator for personal productivity applications. Analyzes project context, makes architectural decisions for single-developer projects, delegates to specialized skills, and ensures alignment between user experience goals and technical implementation. Optimized for personal apps targeting 10-100 users.
Use when working with the OpenAI API (Responses API) or OpenAI platform features (tools, streaming, Realtime API, auth, models, rate limits, MCP) and you need authoritative, up-to-date documentation (schemas, examples, limits, edge cases). Prefer the OpenAI Developer Documentation MCP server tools when available; otherwise guide the user to enable `openaiDeveloperDocs`.
Master API documentation with OpenAPI 3.1, AI-powered tools, and modern developer experience practices. Create interactive docs, generate SDKs, and build comprehensive developer portals. Use PROACTIVELY for API documentation or developer portal creation.
Integrate Vercel AI SDK applications with You.com tools (web search, AI agent, content extraction). Use when developer mentions AI SDK, Vercel AI SDK, generateText, streamText, or You.com integration with AI SDK.