Server

HubSpot

Endpoint
https://app.hubspot.com/mcp/v1/http
Transport
Streamable HTTP
Access
Public Anyone can connect; where an account is needed, anyone can create one by self-service sign-up. Manual check · jbspeakr (documentation pass with Claude Code) · · evidence · Any HubSpot account creates an MCP connector self-service under Development > MCP Connectors; the account admin must connect first before other users in the account can.
Auth
Unknown Not yet established; the evidence says what was looked at. Manual check · jbspeakr (documentation pass with Claude Code) · · evidence · Current vendor docs document only https://mcp.hubspot.com with OAuth 2.1 + PKCE; the listed app.hubspot.com/mcp/v1/http endpoint appears on no HubSpot page found (third-party catalogs call it API-key), so its auth is unsettled.
Why it is listed
Listed because it appears in a public directory of MCP servers. Source
Homepage
https://hubspot.com

Against MCP Authorization 2026-07-28current

  • Supported 8
  • Unsupported 6
  • Not applicable 9

Passive scanGrade C · · Report

Contribute a correctionWithdraw this serverJSON

Older revisions of the matrix: 2025-11-25

MCP server features 13

FeatureLevelStatusObservedEvidence
Protected Resource Metadata servedmcp.prm · Discovery · Authorization Server Discovery › Authorization Server LocationMUSTSupportedPassive scan · scanner@0.3.0source— HTTP 200; resource: https://mcp.hubspot.com
1 earlier observation
  1. Not applicable · Vendor claim · jbspeakr · evidence
PRM lists an authorization servermcp.prm.authorization-servers · Discovery · Authorization Server Discovery › Authorization Server LocationMUSTSupportedPassive scan · scanner@0.3.0source— HTTP 200; authorization_servers: [https://mcp.hubspot.com]
1 earlier observation
  1. Not applicable · Vendor claim · jbspeakr · evidence
PRM lists scopes_supportedmcp.prm.scopes-supported · Discovery · Authorization › Scope Selection StrategyMAYUnsupportedPassive scan · scanner@0.3.0source— HTTP 200; scopes_supported: []
1 earlier observation
  1. Not applicable · Vendor claim · jbspeakr · evidence
PRM reachable at a well-known URImcp.prm.well-known · Discovery · Authorization Server Discovery › Protected Resource Metadata Discovery RequirementsMUSTUnsupportedPassive scan · scanner@0.3.0source— HTTP 404; not at either well-known location (path-aware HTTP 404, root HTTP 404, root HTTP 200)
1 earlier observation
  1. Not applicable · Vendor claim · jbspeakr · evidence
resource_metadata in the 401 challengemcp.prm.www-authenticate · Discovery · Authorization Server Discovery › Protected Resource Metadata Discovery RequirementsMUSTSupportedPassive scan · scanner@0.3.0source— HTTP 401; WWW-Authenticate resource_metadata: https://mcp.hubspot.com/.well-known/oauth-protected-resource
1 earlier observation
  1. Not applicable · Vendor claim · jbspeakr · evidence
403 insufficient_scope for step-upmcp.rs.insufficient-scope · Authorization · Authorization › Scope Challenge HandlingSHOULDNot applicableVendor claim · jbspeakrsourcelists the server as API Key; no OAuth authorization server is involved.
Scope in the WWW-Authenticate challengemcp.rs.scope-challenge · Authorization · Authorization › Scope Selection StrategySHOULDUnsupportedPassive scan · scanner@0.3.0source— HTTP 401; WWW-Authenticate: Bearer resource_metadata="https://mcp.hubspot.com/.well-known/oauth-protected-resource", no scope parameter
1 earlier observation
  1. Not applicable · Vendor claim · jbspeakr · evidence
No offline_access in advertised scopesmcp.prm.no-offline-access · Tokens · Authorization › Refresh TokensSHOULDSupportedPassive scan · scanner@0.3.0source— HTTP 200; scopes_supported without offline_access: []
1 earlier observation
  1. Not applicable · Vendor claim · jbspeakr · evidence
401 for missing or invalid tokensmcp.rs.401-on-invalid · Tokens · Authorization › Token HandlingMUSTNot applicableVendor claim · jbspeakrsourcelists the server as API Key; no OAuth authorization server is involved.
Audience validationmcp.rs.audience-validation · Tokens · Security Considerations › Access Token Privilege RestrictionMUSTNot applicableVendor claim · jbspeakrsourcelists the server as API Key; no OAuth authorization server is involved.
Bearer token only in the Authorization headermcp.rs.bearer-header · Tokens · Authorization › Access Token UsageMUSTNot applicableVendor claim · jbspeakrsourcelists the server as API Key; no OAuth authorization server is involved.
No token passthrough to upstream APIsmcp.rs.no-passthrough · Delegation · Security Considerations › Access Token Privilege RestrictionMUSTNot applicableVendor claim · jbspeakrsourcelists the server as API Key; no OAuth authorization server is involved.
Per-client consent on proxy serversmcp.proxy.consent · Consent · Security Considerations › Confused Deputy ProblemMUSTNot applicableVendor claim · jbspeakrsourcelists the server as API Key; no OAuth authorization server is involved.

Authorization server features 10

FeatureLevelStatusObservedEvidence
Metadata issuer matches the discovery URLmcp.as.issuer-match · Discovery · Authorization Server Discovery › Authorization Server Metadata DiscoveryMUSTSupportedPassive scan · scanner@0.3.0source— HTTP 200; issuer: https://mcp.hubspot.com equals the issuer the PRM named
1 earlier observation
  1. Not applicable · Vendor claim · jbspeakr · evidence
Authorization server metadata discoverablemcp.as.metadata · Discovery · Authorization Server Discovery › Authorization Server Metadata DiscoveryMUSTSupportedPassive scan · scanner@0.3.0source— HTTP 200; issuer: https://mcp.hubspot.com
1 earlier observation
  1. Not applicable · Vendor claim · jbspeakr · evidence
Client ID Metadata Documents supportedmcp.as.cimd · Registration · Client Registration › Client ID Metadata DocumentsSHOULDUnsupportedPassive scan · scanner@0.3.0source— HTTP 200; client_id_metadata_document_supported: absent
1 earlier observation
  1. Not applicable · Vendor claim · jbspeakr · evidence
Dynamic Client Registration offeredmcp.as.dcr · Registration · Client Registration › Dynamic Client RegistrationMAYUnsupportedPassive scan · scanner@0.3.0source— HTTP 200; registration_endpoint: absent
1 earlier observation
  1. Not applicable · Vendor claim · jbspeakr · evidence
Documented pre-registration pathmcp.as.preregistration · Registration · Client Registration › Pre-registrationSHOULDNot applicableVendor claim · jbspeakrsourcelists the server as API Key; no OAuth authorization server is involved.
Issuer identifier in authorization responsesmcp.as.iss-param · Authorization · Authorization › Authorization Response ValidationSHOULDUnsupportedPassive scan · scanner@0.3.0source— HTTP 200; authorization_response_iss_parameter_supported: absent
1 earlier observation
  1. Not applicable · Vendor claim · jbspeakr · evidence
PKCE with S256 advertisedmcp.as.pkce-s256 · Authorization · Security Considerations › Authorization Code ProtectionMUSTSupportedPassive scan · scanner@0.3.0source— HTTP 200; code_challenge_methods_supported: [S256]
1 earlier observation
  1. Not applicable · Vendor claim · jbspeakr · evidence
Refresh token rotation for public clientsmcp.as.refresh-rotation · Tokens · Security Considerations › Token TheftMUSTNot applicableVendor claim · jbspeakrsourcelists the server as API Key; no OAuth authorization server is involved.
Resource indicators honouredmcp.as.resource-indicator · Tokens · Security Considerations › Token Audience Binding and ValidationMUSTNot applicableVendor claim · jbspeakrsourcelists the server as API Key; no OAuth authorization server is involved.
All endpoints served over HTTPSmcp.as.https · Transport · Security Considerations › Communication SecurityMUSTSupportedPassive scan · scanner@0.3.0source— HTTP 200; all 3 endpoints use https
1 earlier observation
  1. Not applicable · Vendor claim · jbspeakr · evidence