One read of Model Context Protocolmcp-20261109T030707Z
6 pages moved out of 359 read.
Pages moved
6
significant first
Pages read
359
in this capture
Captured
03:07 UTC
Corpus hash
6f0e246c4616
sitemap-lastmod
What this read moved
1-6 of 6docs/draft/tutorials/security/security_best_practices Changed · +3 / -3 lines
from line 494
494494The mitigations described above, such as blocking private IP ranges
495495and using egress proxies, apply equally to authorization servers
496496fetching client metadata documents. See
497[Server Side Request Forgery (SSRF) Attacks](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-client-id-metadata-document-00#name-server-side-request-forgery)
497[Server Side Request Forgery (SSRF) Attacks](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-client-id-metadata-document-03#name-server-side-request-forgery)
498498in the Client ID Metadata Document specification for further
499499guidance.
500500
from line 865
865865Servers maintain full control over their access policies. See
866866[Trust Policies](https://modelcontextprotocol.io/specification/draft/basic/authorization/security-considerations.md#trust-policies)
867867in the authorization specification, along with
868[Section 6.4](https://www.ietf.org/archive/id/draft-ietf-oauth-client-id-metadata-document-00.html#section-6.4)
868[Section 10.6](https://www.ietf.org/archive/id/draft-ietf-oauth-client-id-metadata-document-03.html#section-10.6)
869869and
870[Section 6.8](https://www.ietf.org/archive/id/draft-ietf-oauth-client-id-metadata-document-00.html#section-6.8)
870[Section 10.8](https://www.ietf.org/archive/id/draft-ietf-oauth-client-id-metadata-document-03.html#section-10.8)
871871of the Client ID Metadata Document specification, for more details.
872872
873873### Scope Minimization
specification/draft/basic/authorization/client-registration Changed · +4 / -4 lines
from line 16
1616## Client ID Metadata Documents
1717
1818MCP clients and authorization servers **SHOULD** support OAuth Client ID Metadata Documents as specified in
19[OAuth Client ID Metadata Document](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-client-id-metadata-document-00)
19[OAuth Client ID Metadata Document](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-client-id-metadata-document-03)
2020for client registration.
2121
2222This approach enables clients to use HTTPS URLs as client identifiers, where the URL points to a JSON document
from line 26
2626### Implementation Requirements
2727
2828MCP implementations supporting Client ID Metadata Documents **MUST** follow the requirements specified in
29[OAuth Client ID Metadata Document](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-client-id-metadata-document-00).
29[OAuth Client ID Metadata Document](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-client-id-metadata-document-03).
3030Key requirements include:
3131
3232**For MCP Clients:**
from line 35
3535* The `client_id` URL **MUST** use the "https" scheme and contain a path component, e.g. `https://example.com/client.json`
3636* The metadata document **MUST** include at least the following properties: `client_id`, `client_name`, `redirect_uris`
3737* Clients **MUST** ensure the `client_id` value in the metadata matches the document URL exactly
38* Clients **MAY** use `private_key_jwt` for client authentication (e.g., for requests to the token endpoint) with appropriate JWKS configuration as described in [Section 6.2 of Client ID Metadata Document](https://www.ietf.org/archive/id/draft-ietf-oauth-client-id-metadata-document-00.html#section-6.2)
38* Clients **MAY** use `private_key_jwt` for client authentication (e.g., for requests to the token endpoint) with appropriate JWKS configuration as described in [Section 5 of Client ID Metadata Document](https://www.ietf.org/archive/id/draft-ietf-oauth-client-id-metadata-document-03.html#section-5)
3939
4040**For Authorization Servers:**
4141
from line 44
4444* **SHOULD** cache metadata respecting HTTP cache headers
4545* **MUST** validate redirect URIs presented in an authorization request against those in the metadata document
4646* **MUST** validate the document structure is valid JSON and contains required fields
47* **SHOULD** follow the security considerations in [Section 6 of Client ID Metadata Document](https://www.ietf.org/archive/id/draft-ietf-oauth-client-id-metadata-document-00.html#section-6) and in [Client ID Metadata Document Security](https://modelcontextprotocol.io/specification/draft/basic/authorization/security-considerations.md#client-id-metadata-document-security)
47* **SHOULD** follow the security considerations in [Section 10 of Client ID Metadata Document](https://www.ietf.org/archive/id/draft-ietf-oauth-client-id-metadata-document-03.html#section-10) and in [Client ID Metadata Document Security](https://modelcontextprotocol.io/specification/draft/basic/authorization/security-considerations.md#client-id-metadata-document-security)
4848
4949### Example Metadata Document
5050
specification/draft/basic/authorization/security-considerations Changed · +3 / -3 lines
from line 77
7777## Client ID Metadata Document Security
7878
7979When implementing [Client ID Metadata Documents](https://modelcontextprotocol.io/specification/draft/basic/authorization/client-registration.md#client-id-metadata-documents), authorization servers **MUST** consider the security implications
80detailed in [OAuth Client ID Metadata Document, Section 6](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-client-id-metadata-document-00#name-security-considerations).
80detailed in [OAuth Client ID Metadata Document, Section 10](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-client-id-metadata-document-03#name-security-considerations).
8181Key considerations include:
8282
8383### Authorization Server Abuse Protection
8484
8585Authorization servers fetching metadata documents **SHOULD** consider
86[Server-Side Request Forgery (SSRF)](https://developer.mozilla.org/docs/Web/Security/Attacks/SSRF) risks, as described in [OAuth Client ID Metadata Document: Server Side Request Forgery (SSRF) Attacks](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-client-id-metadata-document-00#name-server-side-request-forgery).
86[Server-Side Request Forgery (SSRF)](https://developer.mozilla.org/docs/Web/Security/Attacks/SSRF) risks, as described in [OAuth Client ID Metadata Document: Server Side Request Forgery (SSRF) Attacks](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-client-id-metadata-document-03#name-server-side-request-forgery).
8787
8888### Localhost Redirect URI Risks
8989
from line 97
9797
9898### Trust Policies
9999
100Authorization servers **MAY** implement domain-based trust policies for accepting Client ID Metadata Documents, as described in [Section 6.4](https://www.ietf.org/archive/id/draft-ietf-oauth-client-id-metadata-document-00.html#section-6.4) and [Section 6.8](https://www.ietf.org/archive/id/draft-ietf-oauth-client-id-metadata-document-00.html#section-6.8) of the Client ID Metadata Document specification.
100Authorization servers **MAY** implement domain-based trust policies for accepting Client ID Metadata Documents, as described in [Section 10.6](https://www.ietf.org/archive/id/draft-ietf-oauth-client-id-metadata-document-03.html#section-10.6) and [Section 10.8](https://www.ietf.org/archive/id/draft-ietf-oauth-client-id-metadata-document-03.html#section-10.8) of the Client ID Metadata Document specification.
101101
102102## Confused Deputy Problem
103103
specification/draft/changelog Changed · +4 / -0 lines
## Minor changes
from line 2
22
33Changes since the most recent release will accumulate here.
44
5## Minor changes
6
71. Update the referenced version of [OAuth Client ID Metadata Document](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-client-id-metadata-document-03) from `draft-ietf-oauth-client-id-metadata-document-00` to `draft-ietf-oauth-client-id-metadata-document-03`. MCP implementations that support Client ID Metadata Documents **MUST** follow this version.
8
59## Other schema changes
610
7111. Restore the optional `_meta` field on `CreateMessageRequestParams`, `ElicitRequestFormParams`, `ElicitRequestURLParams`, `ElicitResult`, and `ListRootsResult`. It was unintentionally dropped in 2026-07-28 when these types stopped extending `TaskAugmentedRequestParams` and `Result`, leaving `ListRootsRequest` as the only input request that could carry `_meta` ([#3468](https://github.com/modelcontextprotocol/modelcontextprotocol/issues/3468)).
docs/draft/tutorials/security/authorization Changed · +2 / -2 lines
from line 200
200200
201201### Client ID Metadata Documents
202202
203With a [Client ID Metadata Document](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-client-id-metadata-document-00) (CIMD), the client uses an HTTPS URL as its `client_id` and hosts a JSON document there. The authorization server fetches the document and validates it when it receives an authorization request.
203With a [Client ID Metadata Document](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-client-id-metadata-document-03) (CIMD), the client uses an HTTPS URL as its `client_id` and hosts a JSON document there. The authorization server fetches the document and validates it when it receives an authorization request.
204204
205205```json theme={null}
206206{
from line 789
789789* **[OpenID Connect Discovery 1.0](https://openid.net/specs/openid-connect-discovery-1_0.html)**: The alternative to RFC 8414
790790* **[RFC 8707](https://datatracker.ietf.org/doc/html/rfc8707)**: Resource Indicators
791791* **[RFC 9207](https://datatracker.ietf.org/doc/html/rfc9207)**: Authorization Server Issuer Identification
792* **[OAuth Client ID Metadata Document](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-client-id-metadata-document-00)**: Client IDs that are URLs
792* **[OAuth Client ID Metadata Document](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-client-id-metadata-document-03)**: Client IDs that are URLs
793793* **[RFC 7591](https://datatracker.ietf.org/doc/html/rfc7591)**: Dynamic Client Registration
794794* **[RFC 6750](https://datatracker.ietf.org/doc/html/rfc6750)**: Bearer Token Usage
795795
specification/draft/basic/authorization/index Changed · +2 / -2 lines
from line 35
3535 ([RFC8707](https://www.rfc-editor.org/rfc/rfc8707.html))
3636* OAuth 2.0 Protected Resource Metadata ([RFC9728](https://datatracker.ietf.org/doc/html/rfc9728))
3737* OAuth 2.0 Authorization Server Issuer Identification ([RFC9207](https://datatracker.ietf.org/doc/html/rfc9207))
38* OAuth Client ID Metadata Documents ([draft-ietf-oauth-client-id-metadata-document-00](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-client-id-metadata-document-00))
38* OAuth Client ID Metadata Documents ([draft-ietf-oauth-client-id-metadata-document-03](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-client-id-metadata-document-03))
3939* [OpenID Connect Discovery 1.0](https://openid.net/specs/openid-connect-discovery-1_0.html)
4040* OpenID Connect Dynamic Client Registration 1.0 ([OpenID Connect Registration](https://openid.net/specs/openid-connect-registration-1_0.html))
4141
from line 58
5858 measures for both confidential and public clients.
5959
60602. Authorization servers and MCP clients **SHOULD** support [OAuth Client ID Metadata Documents](https://modelcontextprotocol.io/specification/draft/basic/authorization/client-registration.md#client-id-metadata-documents)
61 ([draft-ietf-oauth-client-id-metadata-document-00](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-client-id-metadata-document-00)).
61 ([draft-ietf-oauth-client-id-metadata-document-03](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-client-id-metadata-document-03)).
6262
63633. Authorization servers and MCP clients **MAY** support the OAuth 2.0 Dynamic Client Registration
6464 Protocol ([RFC7591](https://datatracker.ietf.org/doc/html/rfc7591)). Note that