HubSpot MCP
An MCP server connector for HubSpot CRM that enables agents to manage contacts, companies, deals, tickets, leads, tasks, notes, properties, lists, workflows, knowledge base, and files. It supports multi-account management using host-orchestrated OAuth.
Package and access
Local package with source-attributed installation metadata. Koskamo does not execute packages during review.
What you can do with it
- Manage HubSpot CRM contacts and companies
- Track and update deals and tickets
- Handle tasks, notes, and properties
- Manage workflows and files
Source and maintenance
- Maintenance checked
Packages and installation
Source-provided package data. Koskamo has not executed or live-probed this package.
@mindstone/mcp-server-hubspot 0.4.1
{
"version": "0.4.1",
"transport": "stdio",
"identifier": "@mindstone/mcp-server-hubspot",
"runtimeHint": "npx",
"registryType": "npm",
"registryBaseUrl": "https://registry.npmjs.org",
"environmentVariables": [
{
"name": "HUBSPOT_CONFIG_DIR",
"format": "filepath",
"isRequired": true,
"description": "Directory containing accounts.json and credentials/*.token.json"
},
{
"name": "HUBSPOT_ACCOUNT_EMAIL",
"format": "string",
"isRequired": true,
"description": "Account selector — one MCP process per HubSpot account"
},
{
"name": "MCP_WORKSPACE_PATH",
"format": "filepath",
"description": "Workspace root for local file tools (required only when invoking upload/attach tools)"
},
{
"name": "HUBSPOT_CLIENT_ID",
"format": "string",
"isRequired": true,
"description": "HubSpot OAuth client ID"
},
{
"name": "HUBSPOT_CLIENT_SECRET",
"format": "string",
"isRequired": true,
"description": "HubSpot OAuth client secret"
},
{
"name": "HUBSPOT_SOURCE_LABEL",
"format": "string",
"default": "HubSpot MCP",
"description": "Source attribution label applied to new records"
},
{
"name": "HUBSPOT_DISABLE_REFRESH",
"format": "string",
"description": "Set to 1 to disable token refresh on this surface (use on cloud so desktop remains the sole refresh authority)"
},
{
"name": "HUBSPOT_ALLOW_CLOUD_REFRESH",
"format": "string",
"description": "Set to 1 to allow refresh on the cloud surface even when HUBSPOT_DISABLE_REFRESH=1 (escape hatch)"
},
{
"name": "HUBSPOT_REQUEST_TIMEOUT_MS",
"format": "number",
"default": "60000",
"description": "Outbound HTTP request timeout in milliseconds (max 300000 = 5 min)"
},
{
"name": "HUBSPOT_REFRESH_LOCK_STALE_MS",
"format": "number",
"description": "Stale-lock detection threshold for the credential refresh mutex (advanced)"
}
]
}Tools
Reported by the attributed source; not independently observed by Koskamo.
Connect from your client
Each snippet configures the same source-provided package; replace placeholders before use.
Cursor
{
"mcpServers": {
"hubspot-mcp-mindstone-mcp-server-hubspot": {
"command": "npx",
"args": [
"-y",
"@mindstone/mcp-server-hubspot@0.4.1"
],
"env": {
"HUBSPOT_CONFIG_DIR": "<YOUR_HUBSPOT_CONFIG_DIR>",
"HUBSPOT_ACCOUNT_EMAIL": "<YOUR_HUBSPOT_ACCOUNT_EMAIL>",
"MCP_WORKSPACE_PATH": "<YOUR_MCP_WORKSPACE_PATH>",
"HUBSPOT_CLIENT_ID": "<YOUR_HUBSPOT_CLIENT_ID>",
"HUBSPOT_CLIENT_SECRET": "<YOUR_HUBSPOT_CLIENT_SECRET>",
"HUBSPOT_SOURCE_LABEL": "<YOUR_HUBSPOT_SOURCE_LABEL>",
"HUBSPOT_DISABLE_REFRESH": "<YOUR_HUBSPOT_DISABLE_REFRESH>",
"HUBSPOT_ALLOW_CLOUD_REFRESH": "<YOUR_HUBSPOT_ALLOW_CLOUD_REFRESH>",
"HUBSPOT_REQUEST_TIMEOUT_MS": "<YOUR_HUBSPOT_REQUEST_TIMEOUT_MS>",
"HUBSPOT_REFRESH_LOCK_STALE_MS": "<YOUR_HUBSPOT_REFRESH_LOCK_STALE_MS>"
}
}
}
}Cline
{
"mcpServers": {
"hubspot-mcp-mindstone-mcp-server-hubspot": {
"command": "npx",
"args": [
"-y",
"@mindstone/mcp-server-hubspot@0.4.1"
],
"env": {
"HUBSPOT_CONFIG_DIR": "<YOUR_HUBSPOT_CONFIG_DIR>",
"HUBSPOT_ACCOUNT_EMAIL": "<YOUR_HUBSPOT_ACCOUNT_EMAIL>",
"MCP_WORKSPACE_PATH": "<YOUR_MCP_WORKSPACE_PATH>",
"HUBSPOT_CLIENT_ID": "<YOUR_HUBSPOT_CLIENT_ID>",
"HUBSPOT_CLIENT_SECRET": "<YOUR_HUBSPOT_CLIENT_SECRET>",
"HUBSPOT_SOURCE_LABEL": "<YOUR_HUBSPOT_SOURCE_LABEL>",
"HUBSPOT_DISABLE_REFRESH": "<YOUR_HUBSPOT_DISABLE_REFRESH>",
"HUBSPOT_ALLOW_CLOUD_REFRESH": "<YOUR_HUBSPOT_ALLOW_CLOUD_REFRESH>",
"HUBSPOT_REQUEST_TIMEOUT_MS": "<YOUR_HUBSPOT_REQUEST_TIMEOUT_MS>",
"HUBSPOT_REFRESH_LOCK_STALE_MS": "<YOUR_HUBSPOT_REFRESH_LOCK_STALE_MS>"
}
}
}
}VS Code
{
"servers": {
"hubspot-mcp-mindstone-mcp-server-hubspot": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@mindstone/mcp-server-hubspot@0.4.1"
],
"env": {
"HUBSPOT_CONFIG_DIR": "<YOUR_HUBSPOT_CONFIG_DIR>",
"HUBSPOT_ACCOUNT_EMAIL": "<YOUR_HUBSPOT_ACCOUNT_EMAIL>",
"MCP_WORKSPACE_PATH": "<YOUR_MCP_WORKSPACE_PATH>",
"HUBSPOT_CLIENT_ID": "<YOUR_HUBSPOT_CLIENT_ID>",
"HUBSPOT_CLIENT_SECRET": "<YOUR_HUBSPOT_CLIENT_SECRET>",
"HUBSPOT_SOURCE_LABEL": "<YOUR_HUBSPOT_SOURCE_LABEL>",
"HUBSPOT_DISABLE_REFRESH": "<YOUR_HUBSPOT_DISABLE_REFRESH>",
"HUBSPOT_ALLOW_CLOUD_REFRESH": "<YOUR_HUBSPOT_ALLOW_CLOUD_REFRESH>",
"HUBSPOT_REQUEST_TIMEOUT_MS": "<YOUR_HUBSPOT_REQUEST_TIMEOUT_MS>",
"HUBSPOT_REFRESH_LOCK_STALE_MS": "<YOUR_HUBSPOT_REFRESH_LOCK_STALE_MS>"
}
}
}
}Claude Desktop
{
"mcpServers": {
"hubspot-mcp-mindstone-mcp-server-hubspot": {
"command": "npx",
"args": [
"-y",
"@mindstone/mcp-server-hubspot@0.4.1"
],
"env": {
"HUBSPOT_CONFIG_DIR": "<YOUR_HUBSPOT_CONFIG_DIR>",
"HUBSPOT_ACCOUNT_EMAIL": "<YOUR_HUBSPOT_ACCOUNT_EMAIL>",
"MCP_WORKSPACE_PATH": "<YOUR_MCP_WORKSPACE_PATH>",
"HUBSPOT_CLIENT_ID": "<YOUR_HUBSPOT_CLIENT_ID>",
"HUBSPOT_CLIENT_SECRET": "<YOUR_HUBSPOT_CLIENT_SECRET>",
"HUBSPOT_SOURCE_LABEL": "<YOUR_HUBSPOT_SOURCE_LABEL>",
"HUBSPOT_DISABLE_REFRESH": "<YOUR_HUBSPOT_DISABLE_REFRESH>",
"HUBSPOT_ALLOW_CLOUD_REFRESH": "<YOUR_HUBSPOT_ALLOW_CLOUD_REFRESH>",
"HUBSPOT_REQUEST_TIMEOUT_MS": "<YOUR_HUBSPOT_REQUEST_TIMEOUT_MS>",
"HUBSPOT_REFRESH_LOCK_STALE_MS": "<YOUR_HUBSPOT_REFRESH_LOCK_STALE_MS>"
}
}
}
}Let your agent find its tools
Find servers like HubSpot MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.