HubSpot Deal & Pipeline Management
Overview
Deals in HubSpot represent sales opportunities -- potential or active revenue from clients. For MSPs, deals track managed services agreements, project engagements, hardware sales, or any revenue opportunity moving through the sales process. Each deal belongs to a pipeline (e.g., "Sales Pipeline" or "Renewals") and progresses through stages (e.g., "Discovery", "Proposal", "Closed Won"). Deals are associated with contacts and companies to provide full context on who is involved and which client the revenue belongs to.
MCP Tools
Available Tools
| Tool | Description | Key Parameters |
|---|---|---|
hubspot_retrieve_deal | Get a single deal by ID | dealId (required) |
hubspot_create_deal | Create a new deal | dealname (required), amount, dealstage, pipeline |
hubspot_update_deal | Update an existing deal | dealId (required), property fields to update |
hubspot_list_deal_properties | List all available deal properties | None |
hubspot_search_deals | Search deals by criteria | filterGroups, sorts, limit, after |
Search Deals
Call hubspot_search_deals with filter groups to find deals:
Search by deal name:
{
"filterGroups": [
{
"filters": [
{
"propertyName": "dealname",
"operator": "CONTAINS_TOKEN",
"value": "Managed Services"
}
]
}
],
"limit": 100
}
Search by deal stage:
{
"filterGroups": [
{
"filters": [
{
"propertyName": "dealstage",
"operator": "EQ",
"value": "proposalpendinng"
}
]
}
],
"sorts": [
{
"propertyName": "amount",
"direction": "DESCENDING"
}
],
"limit": 100
}
Search by close date range (upcoming closings):
{
"filterGroups": [
{
"filters": [
{
"propertyName": "closedate",
"operator": "GTE",
"value": "2026-02-01"
},
{
"propertyName": "closedate",
"operator": "LTE",
"value": "2026-03-31"
}
]
}
],
"limit": 100
}
Search for high-value open deals:
{
"filterGroups": [
{
"filters": [
{
"propertyName": "amount",
"operator": "GT",
"value": "10000"
},
{
"propertyName": "dealstage",
"operator": "NOT_IN",
"values": ["closedwon", "closedlost"]
}
]
}
],
"sorts": [
{
"propertyName": "amount",
"direction": "DESCENDING"
}
],
"limit": 100
}
Create a Deal
Call hubspot_create_deal with the deal's properties:
Example: Create a managed services deal:
dealname:Acme Corp - Managed IT Servicesamount:5000dealstage:appointmentscheduledpipeline:defaultclosedate:2026-04-15hubspot_owner_id:67890
Update a Deal
Call hubspot_update_deal with the dealId and the properties to change:
Example: Move deal to next stage:
dealId:54321dealstage:proposalpendingamount:6000
Retrieve a Deal
Call hubspot_retrieve_deal with the dealId:
Example:
hubspot_retrieve_dealwithdealId=54321
Key Concepts
Default Pipeline Stages
HubSpot's default sales pipeline includes these stages (your account may have custom stages):
| Stage ID | Display Name | Probability | MSP Context |
|---|---|---|---|
appointmentscheduled | Appointment Scheduled | 20% | Discovery call booked |
qualifiedtobuy | Qualified to Buy | 40% | Budget and authority confirmed |
presentationscheduled | Presentation Scheduled | 60% | Demo or proposal meeting set |
decisionmakerboughtin | Decision Maker Bought-In | 80% | Key stakeholder agrees |
contractsent | Contract Sent | 90% | MSA or SOW sent for signature |
closedwon | Closed Won | 100% | Deal signed, revenue booked |
closedlost | Closed Lost | 0% | Deal did not close |
Multiple Pipelines
HubSpot supports multiple pipelines for different deal types. Common MSP pipelines:
| Pipeline | Use Case |
|---|---|
| Sales Pipeline | New client acquisition |
| Renewals | Annual contract renewals |
| Projects | One-time project engagements |
| Hardware | Hardware procurement deals |
Deal Amount
The amount field represents the deal's monetary value. For MSPs:
- Monthly recurring deals - Set amount to the monthly recurring revenue (MRR)
- Annual contracts - Set amount to the total contract value (TCV)
- One-time projects - Set amount to the project fee
- Be consistent within each pipeline to enable accurate forecasting
Forecast Categories
Deals can be categorized for forecasting:
| Category | Description |
|---|---|
omit | Excluded from forecast |
pipeline | In pipeline, not yet committed |
bestCase | Best case scenario |
commit | Committed, high confidence |
closed | Closed won |
Field Reference
Core Fields
| Field | Type | Description |
|---|---|---|
dealname | string | Deal name |
amount | number | Deal amount (currency) |
dealstage | enumeration | Current pipeline stage |
pipeline | enumeration | Pipeline the deal belongs to |
closedate | date | Expected or actual close date |
hubspot_owner_id | number | Assigned owner (user ID) |
dealtype | enumeration | Deal type (newbusiness, existingbusiness) |
description | string | Deal description |
createdate | datetime | Record creation date |
lastmodifieddate | datetime | Last modification date |
notes_last_updated | datetime | Last note timestamp |
hs_deal_stage_probability | number | Stage-based close probability |
hs_forecast_amount | number | Weighted forecast amount |
hs_forecast_probability | number | Forecast probability |
hs_closed_amount | number | Actual closed amount |
hs_is_closed | boolean | Whether the deal is closed |
hs_is_closed_won | boolean | Whether the deal is closed won |
num_associated_contacts | number | Associated contacts count |
hs_num_associated_company | number | Associated companies count |
Common Workflows
Search Deals by Stage
- Call
hubspot_search_dealswith a filter ondealstage - Sort by
amountdescending to see highest-value deals first - Review associated companies and contacts for context
Update Deal Stage
- Call
hubspot_retrieve_dealto confirm current stage and details - Call
hubspot_update_dealwith the newdealstagevalue - Optionally update
amountif the deal value has changed - Call
hubspot_create_noteto document why the stage changed
Pipeline Overview
- Call
hubspot_search_dealswith a filter excludingclosedwonandclosedloststages - Group results by
dealstage - For each stage, calculate:
- Number of deals
- Total value
- Average deal size
- Weighted value (total * stage probability)
- Sum weighted values for pipeline forecast
Revenue Forecast
- Call
hubspot_search_dealswith filters:dealstageNOT INclosedlostclosedatewithin the forecast period
- For closed-won deals, use actual
amount - For open deals, calculate weighted amount:
amount * hs_deal_stage_probability - Sum for total forecasted revenue
Create a Deal with Company Association
- Find the company - Call
hubspot_search_companieswith the company name - Find the contact - Call
hubspot_search_contactsfor the decision-maker - Create the deal - Call
hubspot_create_dealwith deal name, amount, stage, and close date - Associate with company - Call
hubspot_create_associationfrom deal to company - Associate with contact - Call
hubspot_create_associationfrom deal to contact - Log creation note - Call