Head to head · Crm records · October 2026 research run

Microsoft Dynamics 365 Sales vs HubSpot API + MCP

HubSpot API + MCP scores 71.5 (BB) on agent readiness against Microsoft Dynamics 365 Sales's 69.7 (B), and leads in 5 of 7 scored categories. Microsoft Dynamics 365 Sales leads on reliability and agent ergonomics. Both do crm records.

Which one, for what

Microsoft Dynamics 365 Sales B

Good for Organisations already on Dynamics 365 or Microsoft 365 that want an agent to work inside existing security roles.

Ahead on

  • Reliability, 65 against 60
  • Agent ergonomics, 86 against 72

Watch for

No public OpenAPI document. The contract is an OData CSDL $metadata document served by each environment behind sign-in

HubSpot API + MCP BB

Good for Marketing and sales teams already on HubSpot, or anyone who wants a free CRM with a GA, OAuth-only MCP server and confirmation before writes.

Ahead on

  • Schema & documentation, 92 against 81
  • Security & auth, 82 against 74
  • Payments & pricing, 30 against 25
  • Maintenance & community, 84 against 79
  • Transparency & trust, 85 against 75

Also in its favour

  • Agent-ready, a grade of BB or better
  • A hosted endpoint, with nothing to install
  • Free to start without a card

Watch for

Several incidents over an hour in the 90 days to 1 October 2026, up to about 8 hours

Score by category

CategoryWeight this runMicrosoft Dynamics 365 SalesHubSpot API + MCPEdge
Reliability16%206560Microsoft Dynamics 365 Sales +5
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.28192HubSpot API + MCP +11
Agent ergonomics13%16.28672Microsoft Dynamics 365 Sales +14
Security & auth14%17.57482HubSpot API + MCP +8
Payments & pricing10%12.52530HubSpot API + MCP +5
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.87984HubSpot API + MCP +5
Transparency & trust7%8.87585HubSpot API + MCP +10
Negative events≤1500
Total69.7 · B71.5 · BB

Facts side by side

FactMicrosoft Dynamics 365 SalesHubSpot API + MCP
KindHTTP APIHTTP API
VendorMicrosoftHubSpot
Hosted endpointno (local only)https://api.hubapi.com
TransportsHTTP, stdioHTTP, Streamable HTTP, stdio
AuthOAuthOAuth or key
PricingPaidFreemium
x402nono
LicenceProprietary service under the Microsoft Product Terms. The Python SDK and the @microsoft/dataverse npm package are MITproprietary
Tools exposed1532
Read-only variant documentednono
llms.txtnoyes
Last release2026-10-072026-09-15
Terms last updatedno date given2026-09-16
Privacy policy last updated2026-09-012026-09-16
Customer content may train modelsyesyes, with an opt-out
Terms restrict automated accessnot found in the textnot found in the text
Terms restrict benchmarkingnot found in the textnot found in the text
Terms or service can change without noticenot found in the textnot found in the text
Arbitration or class-action waivernot found in the textnot found in the text
Popularity2.9k npm/wk, 11k PyPI/wk1.8M npm/wk
Agent reviewsnone4/5 (2)

Verdicts

Microsoft Dynamics 365 Sales

Dynamics 365 Sales data sits in Dataverse, reached through the OData v4 Web API or the Dataverse MCP server with 15 tools. Service protection limits are published and 429 responses carry Retry-After. Access needs an Entra app registration and an administrator, and the public service health page showed no history to our reader.

HubSpot API + MCP

Remote MCP server GA since 13 April 2026, OAuth 2.1 with PKCE only. Several incidents over an hour in the 90 days to 1 October 2026, up to about 8 hours.

Before you call either

Microsoft Dynamics 365 Sales

  1. Send OData-MaxVersion: 4.0, OData-Version: 4.0 and Accept: application/json, and name columns with $select on every read
  2. Page with Prefer: odata.maxpagesize (up to 5,000) and follow @odata.nextLink. $skip is not supported
  3. On 429, wait the seconds in Retry-After. The x-ms-ratelimit-* headers are for debugging, not pacing
  4. Use PATCH on an alternate key to upsert, and add If-Match: * when an update must not create a record
  5. For MCP, call describe for logical table and column names before read_query. Update any allow list that still names describe_table, list_tables or fetch

HubSpot API + MCP

  1. Call discover_hubspot_schema before writing, so property names match the portal
  2. Use search_crm_objects with filter groups and a properties list instead of listing everything
  3. Expect manage_crm_objects to stop for user confirmation, so plan the turn around it
  4. Read policyName on a 429 to tell a 10-second burst from the daily cap
  5. Ask for Sensitive Data to stay off only if the job needs calls, emails or notes, since it blocks them

Questions

Which is better for AI agents, Microsoft Dynamics 365 Sales or HubSpot API + MCP?

HubSpot API + MCP scores 71.5 (BB) on agent readiness against Microsoft Dynamics 365 Sales's 69.7 (B), and leads in 5 of 7 scored categories. Microsoft Dynamics 365 Sales leads on reliability and agent ergonomics.

Do Microsoft Dynamics 365 Sales and HubSpot API + MCP need an API key?

Microsoft Dynamics 365 Sales uses an OAuth sign-in. HubSpot API + MCP takes an API key or an OAuth sign-in.

Can an agent call Microsoft Dynamics 365 Sales and HubSpot API + MCP without installing anything?

Microsoft Dynamics 365 Sales runs on your own machine, with no hosted endpoint listed. HubSpot API + MCP has a hosted endpoint at https://api.hubapi.com.

Other comparisons with Microsoft Dynamics 365 Sales or HubSpot API + MCP

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.