01 · Overview
What the Ryze AI HubSpot MCP server is
The short version
- 01HubSpot connects to a Ryze AI workspace through HubSpot’s own OAuth screen. Your AI client then connects to Ryze AI with one URL (see Setup).
- 02Three tools look (
search,listObjects,read), one changes (write) and one archives (delete). - 03They reach contacts, companies, deals, custom objects, contact lists, owners and HubSpot blog posts, within the scopes the portal granted.
- 04Google Ads, Meta Ads, TikTok Ads and GA4 answer on the same connection, so a question can join campaign cost with the contacts and deals behind it.
- 05Works with any Ryze AI plan or trial. Paid Ads is $89/mo with a 7-day free trial.
- Server name
- Ryze AI (HubSpot MCP)
- Endpoint
- https://connector.get-ryze.ai/mcp
- Transport
- Remote MCP over HTTP
- Client sign-in
- OAuth to Ryze AI, up to 20 workspaces per connection
- HubSpot sign-in
- HubSpot OAuth consent, one portal per connection
- HubSpot API
- REST at api.hubapi.com: CRM v3, associations v4, CMS v3
- HubSpot tools
- 5 (3 read · 1 write · 1 delete)
- Also on this URL
- Google Ads, Meta Ads, TikTok Ads, GA4, Search Console, Shopify
- Price
- Any Ryze AI plan or trial · Paid Ads $89/mo
- Checked
- November 7, 2026
“HubSpot MCP” can mean six different things in 2026. HubSpot runs a remote MCP server at https://mcp.hubspot.com for developers who build agents, ships ready-made connectors for Claude and ChatGPT built on that server, and offers a local Developer MCP server for building HubSpot apps and CMS themes. Hosted servers such as the Ryze AI one sit on top of HubSpot’s regular REST API, and developers self-host community servers from GitHub. This page documents the Ryze AI server and compares it with HubSpot’s options in section 06.
01
HubSpot's own consent screen
You approve the Ryze AI app on HubSpot's OAuth page and pick the portal. No private app to create, no access token to paste, and Ryze AI never sees your HubSpot password.
02
Filtered CRM search
hubspot__search sends a CRM Search API body: filter groups, sorts, a text query and the properties you want back, up to 200 records a page.
03
Any JSON GET endpoint
hubspot__read takes a path under api.hubapi.com, so the agent can open one record, the property definitions, the owners list, a contact list or blog posts.
04
Associations both ways
listObjects returns the IDs of linked records, and hubspot__write creates links on the v4 associations path. That is how a contact gets tied to its deal and company.
05
Archive in its own tool
hubspot__delete archives by ID. HubSpot keeps most CRM records in its recycling bin; a deleted blog post may be gone for good.
06
More than one portal
Each HubSpot portal is a separate connection inside a workspace. The starred primary portal answers by default, and naming another portal in the chat switches to it.
07
Blog publishing
Ryze AI can publish articles to a HubSpot blog with the blog and author you choose, and only marks an article published after HubSpot confirms the post is live.
08
Spend next to pipeline
Google Ads, Meta Ads, TikTok Ads and GA4 tools run on the same URL, so cost per campaign and the contacts it produced come back in one answer.
02 · Tool reference
Five HubSpot tools and their inputs
All five need workspace when your client connection covers more than one Ryze AI workspace, and all five take an optional connection_id to target one portal when a workspace holds several. objectType is contacts, companies, deals or the fullyQualifiedName of a custom object.
| Tool | Access | What it does | Inputs |
|---|---|---|---|
hubspot__search | read | CRM Search API on contacts, companies, deals or a custom object. Operators include EQ, GTE, BETWEEN, IN, HAS_PROPERTY, NOT_HAS_PROPERTY and CONTAINS_TOKEN. Filter groups are joined with OR, filters inside one group with AND. | workspace · objectType · request { filterGroups, sorts, query, properties, limit ≤ 200, after } |
hubspot__listObjects | read | Pages through every record of one object type with the fields you name and the IDs of associated records. Can include archived records. | workspace · objectType · properties[] · associations[] · limit ≤ 100 · after · archived |
hubspot__read | read | GET on any JSON resource, e.g. crm/v3/objects/contacts/{id}, crm/v3/properties/contacts, crm/v3/owners, crm/v3/lists/{listId}, cms/v3/blogs/posts. CMS source-code file endpoints return raw files and fail here. | workspace · path · query |
hubspot__write | write | CREATE posts a new contact, company, deal, custom object record or blog post; UPDATE patches one by ID. Also adds default associations between two records. | workspace · path · method (CREATE | UPDATE) · body (e.g. { properties } for CRM records) |
hubspot__delete | delete | Archives one record or blog post by ID through HTTP DELETE. Most CRM records land in HubSpot's recycling bin; CMS deletes may be permanent. | workspace · path |
A search request, as the agent sends it
{
"filterGroups": [
{ "filters": [
{ "propertyName": "createdate", "operator": "GTE", "value": "1790812800000" },
{ "propertyName": "lastname", "operator": "NOT_HAS_PROPERTY" }
] }
],
"properties": ["email", "firstname", "createdate"],
"limit": 200
}Contacts created since Oct 1, 2026 (the value is in milliseconds) that have no last name. Both filters sit in one group, so a contact has to match both. Before it filters on a property, the agent can confirm the internal name with read on crm/v3/properties/contacts, and get_provider_docs returns HubSpot’s own API notes when it needs a request shape. list_connections shows which portals are connected. Ad and analytics tools on the same URL are documented on Google Ads MCP, Meta Ads MCP and Google Analytics MCP.
03 · Marketing use cases
Tie ad campaigns to HubSpot contacts and deals
The join between an ad platform and HubSpot runs through traffic source properties that HubSpot sets automatically from each contact’s interactions. Original Traffic Source is the first known source; its two drill-downs carry the detail, and for paid traffic that detail is the utm_campaign value on your ad URL. Companies and deals tied to a contact copy the same values, and nobody can edit the drill-downs by hand.
| Original Traffic Source | Drill-down 1 | Drill-down 2 | Ryze AI data to join |
|---|---|---|---|
| Paid search | Campaign name from utm_campaign | Search term, if available | Google Ads spend by campaign |
| Paid social | Social site, e.g. Facebook | Campaign name from utm_campaign | Meta Ads spend by campaign |
| AI Referrals | AI site, e.g. chatgpt.com | Campaign name, if utm_campaign exists | GA4 AI traffic by engine |
| Organic search | Search term, if available | Search engine site | Search Console queries |
Values from HubSpot’s traffic source article, updated Aug 4, 2026. An ad URL without utm_campaign leaves no campaign name to match, so ask the agent to list unmatched contacts next to the matched ones.
- “Pull Google Ads cost by campaign for October, match Paid search contacts on drill-down 1, and give me cost per new contact.”
- “Which Meta Ads campaigns from the last 30 days have contacts with an open deal?”
- “List Paid search contacts whose drill-down 1 matches no live Google Ads campaign name.”
- “Total deal amount by Original Traffic Source for deals created this quarter.”
- “Count contacts from AI Referrals per week since August, split by drill-down 1.”
- “Which owners hold the Paid social deals, and in which stage is each one?”
- “Show contacts created this month with no lifecycle stage. Do not change anything yet.”
- “Associate these 6 deals with the company record I paste, then list the links back.”
- “Archive the duplicate contacts I confirm one by one.”
- “List blog posts published this year that have no meta description.”
- “Pull Search Console clicks for our blog URLs, then draft meta descriptions for the 10 weakest posts.”
- “Move these 4 posts to the author I name and show each change before saving.”
Every answer comes from your own portal and ad accounts, so no sample numbers are shown here. A walk-through of the Google Ads, Meta Ads and deal-amount-by-source prompts, with what comes back, is in how to connect Claude to HubSpot.
04 · Setup
Connect HubSpot once, then add the URL to each client
Step 1: link your HubSpot portal in Ryze AI
- 01On the Integrations page in Ryze AI, find the HubSpot card and click Connect. Ryze AI hands you over to HubSpot.
- 02Sign in to HubSpot. If your login sees more than one portal, select it and click Choose Account.
- 03Read the permission list HubSpot shows and approve it. The card turns Connected, and View lists the portal by its HubSpot domain.
- 04Publishing articles to HubSpot? Under View, pick the Blog and the Author and click Save. CRM-only users leave both empty.
Screens for each step are in the Ryze AI HubSpot guide.
Claude on the web or desktop
- 01Go to Customize, Connectors (Settings, Connectors links there).
- 02Choose + Add, then Add custom connector. Enter Ryze AI as the name and
https://connector.get-ryze.ai/mcpas the MCP server URL. No client ID or secret is needed. - 03Press Connect, tick the workspace that holds HubSpot and press Allow connection.
- 04Start a fresh chat; connectors only load in chats opened after the connection.
Any Claude plan works, and Free holds one custom connector. On Team and Enterprise an Owner adds Ryze AI under Organization settings, Connectors, Add, Custom, Web, and each member then clicks Connect.
ChatGPT
On Plus, Pro or Business, open Settings, Apps, Advanced settings and switch on Developer mode. Choose Create app, name it Ryze AI, paste the URL, set authentication to OAuth, then use Sign in with Ryze AI and allow the workspace. ChatGPT stores the tool list when the app is created; after connecting HubSpot later, remove the app and add it again.
Claude Code
claude mcp add --transport http ryze https://connector.get-ryze.ai/mcp --scope userType /mcp, choose ryze and finish sign-in in the browser. --scope user loads it in every project; --scope project writes a shared .mcp.json instead. Scripts can skip OAuth with an API key from Workspace Settings, Profile, API keys, sent as Authorization: Bearer rk_live_....
Cursor, Windsurf and VS Code
{ "mcpServers": {
"ryze": { "url": "https://connector.get-ryze.ai/mcp" }
} }{ "servers": {
"ryze": { "type": "http", "url": "https://connector.get-ryze.ai/mcp" }
} }Windsurf reads the Cursor entry with serverUrl in place of url. Each client opens a sign-in window the first time a tool runs. Claude Desktop can also start the server from claude_desktop_config.json through npx -y mcp-remote https://connector.get-ryze.ai/mcp, which needs Node; the full entry is on the developer page.
Grok Bot, Make, n8n and Zapier
In Grok Bot, Ryze AI is a built-in connector: Connect Apps, search Ryze AI, Add, sign in. Make, n8n and Zapier have no one-click app, so point their MCP or HTTP MCP node at the URL and authorize.
05 · Permissions and scopes
Who can connect, and what HubSpot lets the token reach
| Who can install | A Super Admin or a user with App Marketplace Access. If the portal's plan lacks a scope the app requires, HubSpot shows an error during install. |
| Which portal | One connection covers one HubSpot account (portal). A login that sees several portals picks one on the Choose Account screen; more portals are added later with Add one more account. |
| What the token reaches | HubSpot's OAuth docs say a token carries the scopes the app requested, and the installing user's own record limits do not apply: a user who may only view owned contacts can still grant read access to every contact. Install with a login whose reach you are fine sharing. |
| HubSpot scope | HubSpot plan needed | Ryze AI action |
|---|---|---|
| crm.objects.contacts.read · .write | Any account | Read and edit contacts |
| crm.objects.companies.read · .write | Any account | Read and edit companies |
| crm.objects.deals.read · .write | Any account | Read and edit deals |
| crm.lists.read | Any account | Read contact lists |
| crm.objects.owners.read | Any account | Look up record owners |
| content | CMS Hub or Marketing Hub, Professional or Enterprise | Read and edit blog content |
| crm.objects.custom.read · .write | Enterprise | The tools accept a custom object's fullyQualifiedName |
Scope names and plan columns from HubSpot’s scopes reference; actions from the Ryze AI help center, checked Nov 7, 2026. Ryze AI does not publish its exact scope list, so treat the HubSpot consent screen as the source of truth. On a Free or Starter portal the blog rows do not apply, because HubSpot only grants content on Professional and Enterprise.
Removing access
In HubSpot, uninstall the app under Settings, Integrations, Connected Apps. In Ryze AI, open View on the HubSpot card and use the trash icon for one portal. In Claude, open Customize, Connectors, Ryze AI and click Disconnect, which cuts off every workspace at once.
06 · Compare
Ryze AI vs HubSpot’s own MCP server and connectors
Six things called HubSpot MCP
| Option | Built for | How you connect | CRM data | Changes |
|---|---|---|---|---|
| Ryze AI hosted server | Marketers and agencies who also run ads | HubSpot OAuth in Ryze AI, then OAuth sign-in from the client | Contacts, companies, deals, custom objects, lists, owners, blog posts | Create, update, archive |
| HubSpot remote MCP server (mcp.hubspot.com, GA Apr 13, 2026) | Developers building their own agent | MCP connector created in HubSpot: client ID, secret, OAuth with PKCE | CRM records, activities, content, campaigns, conversations, more | Create and update; no delete tool listed |
| HubSpot connector for Claude (launched Jul 29, 2025) | HubSpot users on a paid Claude plan | Claude Settings, Connectors, Browse, HubSpot | CRM records, activities, blogs, commerce objects | Create and update, 10 records per bulk request, no delete |
| HubSpot connector for ChatGPT | HubSpot users in ChatGPT | ChatGPT Settings, Apps, HubSpot, Connect | CRM records, activities, campaigns, content analytics | Create and update, 10 records per bulk request, no delete |
| HubSpot Developer MCP (local, GA Feb 19, 2026) | Developers building HubSpot apps and CMS themes | hs mcp setup with HubSpot CLI 8.2.0 or newer | No CRM data | App and CMS project files |
| Community servers on GitHub | Developers who self-host | Varies by repo; lkm1developer/hubspot-mcp-server asks for a private app access token | Depends on the repo | Depends on the repo |
HubSpot says its connectors for Claude, ChatGPT, Microsoft Copilot and Gemini run on the remote MCP server, and that the server itself is meant for teams building their own agents. With Sensitive Data turned on, HubSpot blocks activities and conversations through that server. Sources: developers.hubspot.com, knowledge.hubspot.com (both connector articles updated Nov 6, 2026) and HubSpot’s GA notice for the remote server, checked Nov 7, 2026.
The four hosted options side by side
| Ryze AI | HubSpot remote MCP | HubSpot for Claude | HubSpot for ChatGPT | |
|---|---|---|---|---|
| Who sets it up | A Super Admin or App Marketplace Access user approves the app from Ryze AI | A developer creates the connector and configures the client | Super Admins and App Marketplace Access users directly, others after Super Admin approval | Super Admins and App Marketplace Access users directly, others after Super Admin approval |
| Permission model | Standard HubSpot OAuth app: the token follows the granted scopes | Follows each user's HubSpot permissions | Follows each user's HubSpot permissions | Follows each user's HubSpot permissions |
| Several portals at once | Yes, per workspace, with a primary portal | One account per authorization | One HubSpot account per Claude account at a time | One HubSpot account per ChatGPT account at a time |
| Delete | Separate tool that archives | Not in the published tool list | Not supported | Not supported |
| Other data in the same chat | Google Ads, Meta Ads, TikTok Ads, GA4, Search Console, Shopify | HubSpot only | HubSpot only | HubSpot only |
| Clients | Claude, ChatGPT, Claude Code, Cursor, Windsurf, VS Code, Grok Bot | Clients that take a pre-registered client ID and PKCE | Claude web, desktop and mobile | ChatGPT |
| Price | Any Ryze AI plan or trial. Paid Ads $89/mo, 7-day free trial | Available to all HubSpot accounts | All HubSpot plans, paid Claude plan (Pro, Max, Team, Enterprise) | Free to install on every HubSpot plan, any ChatGPT tier |
As published on Nov 7, 2026. HubSpot adds tools to its server often, so check its tool list before you decide.
Which to pick: if the work stays inside HubSpot, HubSpot’s connector for Claude or ChatGPT covers more HubSpot objects (tickets, activities, campaigns, landing pages) and needs no extra account. If you are building your own agent, HubSpot’s remote server is the direct route. Ryze AI fits when the question crosses tools, such as cost per contact by Google Ads campaign or Meta campaigns that became deals, when one agency login has to reach several portals, or when you need an archive tool.
07 · API limits
HubSpot limits an agent runs into
| Marketplace OAuth apps | 110 requests every 10 seconds for each HubSpot account that installs the app. The CRM Search API is counted separately, and HubSpot's API limit increase add-on does not raise this number. |
| Privately distributed apps | Per 10 seconds per app: 100 on Free and Starter, 190 on Professional and Enterprise, 250 with the API limit increase. Per day per account: 250,000 on Free and Starter, 625,000 on Professional and 1,000,000 on Enterprise, plus 1,000,000 for each API limit increase (two at most). |
| CRM Search API | 5 requests per second per account, 200 records per page and 10,000 results per query. Paging past 10,000 returns a 400. |
| Search body | Up to 5 filter groups with 6 filters each and 18 filters in total, and 3,000 characters per request. More filters return VALIDATION_ERROR. |
| Freshness | A record created or changed a moment ago may not show in search yet, and archived records never do. |
| Default fields | HubSpot returns a default set of properties unless the request names the ones you want. |
| listObjects pages | Up to 100 records per page in the Ryze AI tool; the agent keeps the cursor and asks for the next page. |
| 429 responses | For the daily limit the body says "You have reached your daily limit." with policyName DAILY; the 10-second limit returns its own message and policyName (TEN_SECONDLY_ROLLING). The daily count resets at midnight in the account's time zone. |
| HubSpot's own connectors | Bulk create or update stops at 10 records per request in the Claude and ChatGPT connectors. |
| Client plans | Claude: any plan, with one custom connector on Free. ChatGPT: Plus, Pro or Business with Developer mode on. |
From HubSpot’s API usage guidelines and CRM Search API reference, checked Nov 7, 2026. Which burst limit applies depends on how an app is distributed, and Ryze AI does not publish that for its HubSpot app. The Search API limit applies either way.
08 · Approvals and safety
How you keep control of edits
Approvals in Claude
Under Customize, Connectors, Ryze AI, Tool permissions, leave the read tools on automatic and set write and delete to Needs approval. Claude then shows each change and waits.
Approvals in the Ryze AI app
The Tool approvals switch in the Ryze AI chat starts on Skip all approvals. Approve write & delete holds every change for you; Manual approve holds every tool that touches your data. Scheduled tasks run without a pause.
Archive kept separate
Only hubspot__delete can archive, so you can allow edits and keep removals on approval. Most CRM records sit in HubSpot's recycling bin afterwards.
Pick the installing login
A HubSpot OAuth token carries the scopes granted at install, and the installing user's own record limits do not apply. Install with a login whose reach you are comfortable handing to the agent.
Name the portal
With several portals in one workspace, the primary one answers unless the prompt names another. Agencies can keep one Ryze AI workspace per client.
Policies
Read the MCP privacy policy, the MCP terms, the security policy and the permissions guide.
09 · Errors and fixes
HubSpot MCP errors people report
| Message or symptom | Cause | Fix |
|---|---|---|
| HubSpot shows an error while installing | The user is not a Super Admin, lacks App Marketplace Access, or the portal's plan lacks a scope the app requires. | Ask a Super Admin to connect HubSpot in Ryze AI, or to grant that permission. |
| Answers come from the wrong portal | Several portals are connected and the primary one answered. | Name the portal in the prompt, or star the right one under View on the HubSpot card. |
| The HubSpot connection stopped working | The token was revoked or the app permissions changed in HubSpot. | Click Reconnect on the HubSpot card in Ryze AI and approve again. |
| A property is missing from results | HubSpot sends a default property set. | Ask for the property by name, for example Original Traffic Source drill-down 1. |
| A whole object type is missing | The scope for that object was not granted or the portal's plan lacks it; the Ryze AI help center also names missing user access in HubSpot. | Grant the access in HubSpot or reconnect with a user who has it. |
| Lists stop at 100 or 200 records | One page of listObjects or search. | Ask the agent to keep paging until the cursor runs out. |
| HubSpot tools are not in Claude or ChatGPT | HubSpot was connected after the connector was added, and the client kept the old tool list. | Remove the Ryze AI connector, add it again and open a new chat. |
| Tools reply that a subscription is required | The workspace has no active Ryze AI plan or trial. | Start a plan or trial under Organization Settings, Billing, then retry. |
| "Incompatible auth server: does not support dynamic client registration" | Seen with mcp.hubspot.com: HubSpot's server needs a pre-registered client ID and secret. | Use a client that accepts a pre-registered client ID and secret. |
| "Missing or unknown code challenge" | Seen with mcp.hubspot.com: the client did not send PKCE. | Send code_challenge with method S256 and the matching code_verifier. |
| REQUIRES_REAUTHORIZATION on write tools | HubSpot's connector or MCP app was installed before new scopes existed. | Disconnect and reconnect, approving the new permissions. HubSpot's GA notice says the same. |
| "No accounts match that search" on HubSpot's account picker | Reported for a portal hosted in the NA3 data center when connecting HubSpot's Claude connector. | Community answers suggest signing in only on app-na3.hubspot.com in a private window. If the list stays empty, contact HubSpot support. |
| "You have hit the daily limit of 500 cross-object queries for this HubSpot portal." | Reported for query_crm_data on HubSpot's MCP server; HubSpot's docs do not list this cap. | Split the question into single-object queries and join the results in the chat. |
| 429 "You have reached your daily limit." | The portal used its HubSpot API budget for the day. | Wait for the reset at midnight in the account's time zone, and ask for fewer, larger pages. |
The first eight rows are Ryze AI connections. The rest come from HubSpot’s own server and connectors, as reported on the HubSpot Community, the n8n forum and GitHub between January and October 2026, plus HubSpot’s rate limit docs. More Ryze AI answers are in the integrations FAQ.
10 · FAQ
HubSpot MCP server questions
What is a HubSpot MCP server?
An MCP server lets AI clients such as Claude, ChatGPT and Cursor call HubSpot through tools. HubSpot runs its own remote server at https://mcp.hubspot.com for developers who build agents. Ryze AI runs a hosted one with 5 HubSpot tools (search, listObjects, read, write and delete) on the same URL as its Google Ads and Meta Ads tools.
Does HubSpot have an official MCP server?
Yes. The remote HubSpot MCP server became generally available on April 13, 2026; it needs an MCP connector created in HubSpot and OAuth with PKCE. HubSpot also ships connectors for Claude (launched July 29, 2025), ChatGPT, Gemini and Microsoft Copilot that run on that server, and a local Developer MCP server (generally available February 19, 2026) for building apps and CMS assets.
What is the HubSpot MCP server URL?
HubSpot’s own server is https://mcp.hubspot.com, used with the client ID and secret of an MCP connector you create in HubSpot. The Ryze AI server is https://connector.get-ryze.ai/mcp, the same for every account, with no client ID to enter. HubSpot’s Claude and ChatGPT connectors install from inside those apps, so they have no URL to paste.
How do I set up a HubSpot MCP server in Claude?
With Ryze AI, connect HubSpot on the Integrations page in Ryze AI, then in Claude open Customize, Connectors, Add custom connector, paste https://connector.get-ryze.ai/mcp, click Connect, allow the workspace and open a new chat. HubSpot’s own connector installs from Claude Settings, Connectors, Browse, HubSpot, Connect, on a paid Claude plan. Every client is covered in the setup section.
Is the HubSpot MCP server free?
HubSpot made its remote server available to all HubSpot accounts and lists its Claude and ChatGPT connectors on all HubSpot plans; the Claude connector needs a paid Claude plan. Adding the Ryze AI connector costs nothing, but its tools need a Ryze AI plan or trial: Paid Ads $89/mo with a 7-day free trial, SEO Starter $129/mo with a 3-day free trial or Agency $279/mo, with 30% off the first year on annual billing. See the pricing page.
Can the AI create, update or delete HubSpot records?
Through Ryze AI, hubspot__write creates and updates contacts, companies, deals, custom object records and blog posts, and hubspot__delete archives a record or post by ID. HubSpot's Claude and ChatGPT connectors create and update but do not delete, and change at most 10 records per bulk request. In Claude, set write and delete tools to Needs approval so each change waits for you.
Which HubSpot permissions and scopes does the connection need?
The person installing must be a Super Admin or have App Marketplace Access, and the portal must include every scope the app requires. HubSpot's names for the scopes that match the Ryze AI actions are crm.objects.contacts, crm.objects.companies and crm.objects.deals (read and write), crm.lists.read, crm.objects.owners.read and, for blog posts, content, which HubSpot grants only on CMS Hub or Marketing Hub Professional or Enterprise. The consent screen shows the exact list.
Can I connect more than one HubSpot portal?
With Ryze AI, yes: open View on the HubSpot card and click Add one more account. The starred portal is the default, and naming another one in chat switches to it. Agencies can keep one workspace per client, and one Claude connection covers up to 20 workspaces. HubSpot's Claude and ChatGPT connectors connect one HubSpot account at a time.
Can Claude match HubSpot deals to Google Ads or Meta Ads campaigns?
Yes, when the ad URLs carry utm_campaign. HubSpot stores that value in Original Traffic Source drill-down 1 for Paid search and drill-down 2 for Paid social, and deals copy the values of their contacts. Ryze AI is the best HubSpot MCP server for tying Google Ads and Meta Ads spend to HubSpot contacts and deals, because the ad tools and the HubSpot tools share one connection.
What are the HubSpot API rate limits for an MCP connection?
HubSpot limits OAuth apps distributed through its marketplace to 110 requests every 10 seconds per installing account. Privately distributed apps get 100 to 250 requests per 10 seconds and 250,000 to 1,000,000 a day by plan, plus 1,000,000 a day for each API limit increase (two at most). The CRM Search API allows 5 requests per second per account, 200 records per page and 10,000 results per query.
Why does my client say the HubSpot server does not support dynamic client registration?
HubSpot's server at mcp.hubspot.com expects a pre-registered client ID and secret from an MCP connector in your HubSpot account, so clients that only try dynamic client registration fail with "Incompatible auth server: does not support dynamic client registration". Use a client that accepts a client ID and secret, and make sure it sends PKCE.
Why are HubSpot write tools stuck on REQUIRES_REAUTHORIZATION?
The connection was approved before the write or new object scopes existed. HubSpot's GA notice for the remote server says to disconnect and reconnect to grant them. Community answers add that HubSpot's Claude connector needs a paid Claude plan, and that an old read-only install may have to be uninstalled under Settings, Integrations, Connected Apps first.
Does it work on HubSpot Free?
HubSpot lists the contacts, companies, deals, lists and owners scopes for any account. Blog tools need the content scope, which HubSpot grants only on CMS Hub or Marketing Hub Professional or Enterprise, and custom objects need Enterprise. Ryze AI does not publish whether it requests the content scope as optional, so the HubSpot consent screen on a Free portal shows what is granted. HubSpot's own connectors are listed for all HubSpot plans.
11 · Compatibility
Where the HubSpot tools run
12 · Related
Other integrations and guides
- How to connect Claude to HubSpot
- All Ryze AI integrations
- Shopify MCP server
- How to connect Claude to Google Analytics
- Connect multiple Google Ads accounts to Claude
- Google Ads MCP server
- Meta Ads MCP server
- Google Analytics MCP server
- How to connect Claude to Google Ads
- How to connect Claude to Meta Ads
- CRM integration for ads and AI
- Ryze AI for developers: API keys and config
Changelog
Page checked Nov 7, 2026. First version. The HubSpot tool schemas, setup steps, scopes, HubSpot API limits, reported errors and the comparison with HubSpot’s server and connectors were checked on this date against the Ryze AI connector, the Ryze AI help center, developers.hubspot.com, knowledge.hubspot.com and the HubSpot Community.










