# HubSpot MCP Server
MCP server providing HubSpot CRM tools for contacts, companies, and deals.
## Features
- **Contacts**: List, get, create, update, and search contacts
- **Companies**: List, get, create, and search companies
- **Deals**: List, get, create, and update deals
- **Pipelines**: List and get deal/ticket pipelines
- **Owners**: List and get HubSpot users
## Authentication
Authentication is handled by the MCP Gateway via OAuth 2.0. This server receives access tokens through the `Authorization` header.
To authenticate:
1. Navigate to the gateway's OAuth endpoint: `/oauth/hubspot/authorize`
2. Complete the HubSpot OAuth flow
3. Access tokens are automatically managed by the gateway
## Local Development
```bash
# Install dependencies
pip install -e .
# Set environment variable for local testing
export HUBSPOT_ACCESS_TOKEN="your-access-token"
# Run server
python server.py
```
## Docker
```bash
# Build (requires mcp-base image)
docker build -t hubspot-mcp .
# Run
docker run -p 3004:3004 hubspot-mcp
```
## Available Tools
| Tool | Description |
|------|-------------|
| `hubspot_list_contacts` | List contacts with pagination |
| `hubspot_get_contact` | Get a specific contact |
| `hubspot_create_contact` | Create a new contact |
| `hubspot_update_contact` | Update an existing contact |
| `hubspot_search_contacts` | Search contacts |
| `hubspot_list_companies` | List companies with pagination |
| `hubspot_get_company` | Get a specific company |
| `hubspot_create_company` | Create a new company |
| `hubspot_search_companies` | Search companies |
| `hubspot_list_deals` | List deals with pagination |
| `hubspot_get_deal` | Get a specific deal |
| `hubspot_create_deal` | Create a new deal |
| `hubspot_update_deal` | Update an existing deal |
| `hubspot_list_pipelines` | List pipelines |
| `hubspot_get_pipeline` | Get a specific pipeline |
| `hubspot_list_owners` | List HubSpot owners/users |
| `hubspot_get_owner` | Get a specific owner |
## Configuration
| Environment Variable | Description | Default |
|---------------------|-------------|---------|
| `HUBSPOT_ACCESS_TOKEN` | Fallback access token (dev only) | - |
| `LOG_LEVEL` | Logging level | `INFO` |
| `PORT` | Server port | `3004` |