Server

Netlify

Endpoint
https://netlify-mcp.netlify.app/mcp
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 · Prerequisites are only a Netlify account and an MCP client; no plan or admin requirement is documented.
Auth
Unknown Not yet established; the evidence says what was looked at. Manual check · jbspeakr (documentation pass with Claude Code) · · evidence · Docs say to authorize Netlify if prompted after adding the remote server but never name the mechanism; the PAT instructions apply to the local npx server only.
Why it is listed
Listed because it appears in a public directory of MCP servers. Source
Homepage
https://netlify.com

Against MCP Authorization 2026-07-28current

  • Supported 10
  • Unsupported 4
  • Unknown 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://netlify-mcp.netlify.app/mcp
1 earlier observation
  1. Supported · Passive scan · scanner@0.2.0 · 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://netlify-mcp.netlify.app/]
1 earlier observation
  1. Supported · Passive scan · scanner@0.2.0 · evidence
PRM lists scopes_supportedmcp.prm.scopes-supported · Discovery · Authorization › Scope Selection StrategyMAYSupportedPassive scan · scanner@0.3.0source— HTTP 200; scopes_supported: [offline_access, read, write, claudeai]
1 earlier observation
  1. Supported · Passive scan · scanner@0.2.0 · evidence
PRM reachable at a well-known URImcp.prm.well-known · Discovery · Authorization Server Discovery › Protected Resource Metadata Discovery RequirementsMUSTSupportedPassive scan · scanner@0.3.0source— HTTP 200; found at the path-aware location
1 earlier observation
  1. Supported · Passive scan · scanner@0.2.0 · 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://netlify-mcp.netlify.app/.well-known/oauth-protected-resource/mcp
1 earlier observation
  1. Supported · Passive scan · scanner@0.2.0 · evidence
403 insufficient_scope for step-upmcp.rs.insufficient-scope · Authorization · Authorization › Scope Challenge HandlingSHOULDUnknown no observationno observation yet
Scope in the WWW-Authenticate challengemcp.rs.scope-challenge · Authorization · Authorization › Scope Selection StrategySHOULDUnsupportedPassive scan · scanner@0.3.0source— HTTP 401; WWW-Authenticate: Bearer realm="MCP Server", resource_metadata="https://netlify-mcp.netlify.app/.well-known/oauth-protected-resource/mcp", no scope parameter
No offline_access in advertised scopesmcp.prm.no-offline-access · Tokens · Authorization › Refresh TokensSHOULDUnsupportedPassive scan · scanner@0.3.0source— HTTP 200; scopes_supported includes offline_access: [offline_access, read, write, claudeai]
1 earlier observation
  1. Unsupported · Passive scan · scanner@0.2.0 · evidence
401 for missing or invalid tokensmcp.rs.401-on-invalid · Tokens · Authorization › Token HandlingMUSTUnknown no observationno observation yet
Audience validationmcp.rs.audience-validation · Tokens · Security Considerations › Access Token Privilege RestrictionMUSTUnknown no observationno observation yet
Bearer token only in the Authorization headermcp.rs.bearer-header · Tokens · Authorization › Access Token UsageMUSTUnknown no observationno observation yet
No token passthrough to upstream APIsmcp.rs.no-passthrough · Delegation · Security Considerations › Access Token Privilege RestrictionMUSTUnknown no observationno observation yet
Per-client consent on proxy serversmcp.proxy.consent · Consent · Security Considerations › Confused Deputy ProblemMUSTUnknown no observationno observation yet

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://netlify-mcp.netlify.app/ equals the issuer the PRM named
1 earlier observation
  1. Supported · Passive scan · scanner@0.2.0 · evidence
Authorization server metadata discoverablemcp.as.metadata · Discovery · Authorization Server Discovery › Authorization Server Metadata DiscoveryMUSTSupportedPassive scan · scanner@0.3.0source— HTTP 200; issuer: https://netlify-mcp.netlify.app/
1 earlier observation
  1. Supported · Passive scan · scanner@0.2.0 · 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. Unsupported · Passive scan · scanner@0.2.0 · evidence
Dynamic Client Registration offeredmcp.as.dcr · Registration · Client Registration › Dynamic Client RegistrationMAYSupportedPassive scan · scanner@0.3.0source— HTTP 200; registration_endpoint: https://netlify-mcp.netlify.app/oauth-server/reg
2 earlier observations
  1. Supported · Passive scan · scanner@0.2.0 · evidence
  2. Unknown · Vendor claim · jbspeakr · evidence
Documented pre-registration pathmcp.as.preregistration · Registration · Client Registration › Pre-registrationSHOULDUnknown no observationno observation yet
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. Unsupported · Passive scan · scanner@0.2.0 · 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. Supported · Passive scan · scanner@0.2.0 · evidence
Refresh token rotation for public clientsmcp.as.refresh-rotation · Tokens · Security Considerations › Token TheftMUSTUnknown no observationno observation yet
Resource indicators honouredmcp.as.resource-indicator · Tokens · Security Considerations › Token Audience Binding and ValidationMUSTUnknown no observationno observation yet
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. Supported · Passive scan · scanner@0.2.0 · evidence