# HubSpot CRM (Full) MCP

> HubSpot CRM (Full) MCP Server gives your AI client instant access to your entire HubSpot CRM. Search, create, and manage contacts, companies, deals, and support tickets without leaving your chat window. It lets you log notes, track pipelines, and manage ownership details—all through natural conversation.

## Overview
- **Category:** industry-titans
- **Price:** Free
- **Tags:** crm-integration, lead-management, pipeline-tracking, customer-data, business-automation

## Description

Your AI client gets instant access to your whole HubSpot CRM. You'll search, create, and manage contacts, companies, deals, and support tickets right from your chat window. You can log notes, track pipelines, and manage ownership details without leaving your chat. 

**Search and Retrieve Records**

You can use `hs_search_contacts` to find people by name, email, phone, or company name, and it'll show you their lifecycle stage. Need to track a company? `hs_search_companies` lets you look up organizations by name, domain, or industry, giving you details like revenue and employee count. If you're checking on a specific deal, `hs_search_deals` finds sales opportunities by name, showing the stage, amount, and expected close date. For support stuff, `hs_search_tickets` pulls up tickets by subject or keyword, showing the status, priority, and when it was created.

**Manage Contacts and Companies**

Want to add a new contact? `hs_create_contact` builds a record using email, name, phone, and links it to an existing company. You can create a new company record with `hs_search_companies` and then connect it to a contact. If you're just building out the client's knowledge base, you can also use `hs_create_note` to add a note to any record—a contact, company, deal, or ticket. You'll also use `hs_create_company` to build out the company record.

**Track Sales Opportunities**

To start a new deal in the pipeline, run `hs_create_deal` with a name, stage, amount, and close date. You can check the available stages for both deals and tickets using `hs_list_pipelines`, which gives you all the stages and their IDs. 

**Handle Support Issues**

When you need to open a support ticket, `hs_create_ticket` handles it, letting you specify the subject, priority, and stage. To see who owns what, `hs_list_owners` lists all users who own CRM records, showing their name, email, and whether their account is active.

**Record Activity and Context**

`hs_create_note` lets you attach detailed notes to any record—contact, company, deal, or ticket—so you've got internal context or meeting summaries logged right there. You'll use `hs_create_note` to make sure the whole team sees what happened.

**Audit Team Structure**

To map out your process, you can see all available deal and ticket pipeline stages using `hs_list_pipelines`. To see who's responsible for which accounts, run `hs_list_owners` to list all users who own CRM records, showing their name, email, and if their account's active.

## Tools

### hs_associate_objects
Common association type IDs: Contact→Company=1, Company→Contact=2, Deal→Contact=3, Contact→Deal=4, Deal→Company=5, Company→Deal=6. Use when attaching a contact to a company, linking a deal to a contact, etc.

Create an association between two HubSpot CRM objects

### hs_create_contact
Creates a new contact record with HubSpot using email, name, phone, and associated company.

### hs_create_deal
Creates a new sales opportunity (deal) in the pipeline with a name, stage, amount, and close date.

### hs_create_note
Adds a note to any record (contact, company, deal, or ticket) to log internal context or meeting summaries.

### hs_create_ticket
Opens a new support ticket in HubSpot Service Hub, specifying the subject, priority, and stage.

### hs_get_company
Returns name, domain, industry, revenue, and employee count. Use when you need to inspect a specific company record.

Retrieve a specific HubSpot company by its unique CRM ID

### hs_get_contact
Returns all standard properties including name, email, phone, company, lifecycle stage, and assigned owner. Use when you already have the contact ID from a search or association lookup.

Retrieve a specific HubSpot contact by its unique CRM ID

### hs_get_deal
Returns deal name, pipeline stage, amount, close date, and assigned owner. Use when inspecting a specific opportunity.

Retrieve a specific HubSpot deal by its unique CRM ID

### hs_list_owners
Lists all users who own CRM records, showing their name, email, and if their account is active.

### hs_list_pipelines
Retrieves all available deal and ticket pipeline stages and their corresponding IDs for accurate record creation.

### hs_search_companies
Searches for companies in HubSpot by name, domain, or industry, returning details like revenue and employee count.

### hs_search_contacts
Finds specific people in HubSpot by name, email, phone, or company name, showing their lifecycle stage.

### hs_search_deals
Searches for sales deals by name, returning the stage, amount, and expected close date for quick status checks.

### hs_search_tickets
Finds specific support tickets by subject or keyword, showing the status, priority, and creation date.

### hs_update_contact
Provide only the fields you want to change as key-value pairs in the properties JSON.

Update properties on an existing HubSpot contact

### hs_update_deal
Use hs_list_pipelines to find valid stage IDs before updating dealstage.

Update properties on an existing HubSpot deal

## Prompt Examples

**Prompt:** 
```
Search for contacts at Acme Corp
```

**Response:** 
```
👥 **Contacts at Acme Corp**
| Name | Email | Phone | Lifecycle |
|---|---|---|---|
| John Smith | john@acme.com | +1 555-0123 | Customer |
| Sarah Chen | sarah@acme.com | +1 555-0456 | Lead |
```

**Prompt:** 
```
Create a deal: Enterprise Package $50,000
```

**Response:** 
```
✅ **Deal Created!**
- Name: Enterprise Package
- Amount: $50,000
- Pipeline: Sales Pipeline
- Stage: Appointment Scheduled
```

**Prompt:** 
```
Show me the deal pipeline stages
```

**Response:** 
```
📊 **Sales Pipeline**
1. Appointment Scheduled
2. Qualified to Buy
3. Presentation Scheduled
4. Decision Maker Bought-In
5. Contract Sent
6. Closed Won ✅
7. Closed Lost ❌
```

## Capabilities

### Search and Retrieve Records
Find specific contacts, companies, deals, or support tickets using names, domains, or keywords.

### Manage Contacts and Companies
Create new contacts and companies, or search for existing ones to update your client's knowledge base.

### Track Sales Opportunities
Create, search, and track deals in the sales pipeline, including setting amounts and expected close dates.

### Handle Support Issues
Create and search support tickets, setting priority and tracking the issue's status.

### Record Activity and Context
Attach detailed notes to any CRM record—a contact, company, deal, or ticket—for internal record keeping.

### Audit Team Structure
List all users (owners) and view the available stages in deal and ticket pipelines for process mapping.

## Use Cases

### Logging a Sales Meeting Summary
A sales rep meets with Acme Corp. They ask the agent to search for the company (`hs_search_companies`) and the primary contact (`hs_search_contacts`). After the call, they use `hs_create_note`, attaching a detailed summary to the company record. The rep gets the internal context logged instantly, without needing to open the HubSpot UI.

### Creating a New Support Ticket Mid-Call
A client calls with a bug. The support specialist asks the agent to create a ticket (`hs_create_ticket`) with a high priority. They then use `hs_create_note` to log the call details, ensuring the client's issue is logged and tracked immediately within the CRM.

### Moving a Deal Forward and Documenting It
The rep confirms the client is ready to sign. They ask the agent to update the deal stage (via `hs_create_deal` logic) and immediately use `hs_create_note` to document the final agreement details. This action updates the pipeline status and provides a clear audit trail.

### Researching a New Prospect Company
Before calling a target, the user asks the agent to search for the company (`hs_search_companies`) and then to find the main contact (`hs_search_contacts`). The agent provides the revenue, employee count, and the contact's current lifecycle stage, allowing the user to tailor the conversation.

## Benefits

- Manage the entire sales cycle without context switching. Use `hs_create_deal` to log a new opportunity, and then use `hs_create_note` to immediately attach meeting details to that deal record.
- Get instant customer context. Search for any person using `hs_search_contacts` to instantly see their lifecycle stage, associated company, and phone number.
- Keep support history centralized. Use `hs_create_ticket` to open a new issue and then `hs_create_note` to log the full conversation thread, keeping everything attached to the ticket.
- Streamline account discovery. Use `hs_search_companies` to look up a prospect's organization details (revenue, employee count) before a call, giving your agent the data instantly.
- Maintain clean data integrity. Use `hs_list_pipelines` to understand the exact stage IDs before creating a deal or ticket, ensuring the record goes into the right place.
- Track who owns what. Use `hs_list_owners` to verify which team member is responsible for a company or deal before making any assignments.

## How It Works

The bottom line is you talk to your agent like you talk to a coworker, and the agent does the backend CRM work.

1. Start by asking your agent to search for a record, like a contact or company. The agent uses `hs_search_contacts` or `hs_search_companies` to pull the current data.
2. Next, tell the agent what you want to change—for instance, 'Create a new deal for $50k.' The agent uses `hs_create_deal` and prompts you for required details.
3. The agent then executes the action, confirming the creation (e.g., 'Deal created with ID X'), and provides the new record details back to your chat.

## Frequently Asked Questions

**How do I use the hs_search_contacts tool to find a person?**
You search by name, email, or phone. The tool returns the person's name, associated company, and current lifecycle stage, letting you know exactly where they stand in your funnel.

**Can I use hs_create_deal to update an existing deal?**
No. `hs_create_deal` is for opening new opportunities. If you need to modify an existing deal, you must use the agent to find the deal ID first, and then use a dedicated update function (if available).

**What information does hs_search_companies provide?**
It returns matching companies along with organizational details like their website domain, industry, annual revenue, and employee count.

**Is hs_create_ticket the best way to log support issues?**
Yes. `hs_create_ticket` opens a formal support ticket in Service Hub. You can also use `hs_create_note` to log informal conversation notes on a contact record if a full ticket isn't needed.

**How do I use hs_list_pipelines to understand stages?**
You run `hs_list_pipelines` to see all possible stages for deals and tickets. This provides the required stage IDs needed when you run `hs_create_deal` or `hs_create_ticket` to ensure the record lands in the right place.

**How do I use hs_create_note to log a meeting summary?**
You pass the note body and optionally associate it with a record ID. This logs a meeting summary in the record's timeline, giving full internal context. The note body supports HTML formatting, so you can format the summary easily.

**What is the difference between hs_search_contacts and hs_search_companies?**
Search contacts finds people using names, emails, or phones. Search companies finds organizations by name, domain, or industry. You use one when you need a person, and the other when you need the corporate entity.

**When should I use hs_list_owners to manage user access?**
You run this tool to list all available HubSpot owners (CRM users). It returns their name, email, and active status. Use it when you need to assign records or check who has access to the CRM.

**What HubSpot data can I access?**
Contacts, Companies, Deals, Tickets, Notes, Owners, and Pipelines. All data respects your HubSpot permissions.

**Can I create and update records?**
Yes! Create contacts, deals, tickets, and notes. All through natural conversation.

**How does authentication work?**
Uses a HubSpot Private App token (Bearer). Create a Private App in Settings > Integrations > Private Apps, copy the token, and paste it.