modelcontextprotocol / modelcontextprotocol/php-sdk
[Client][Auth] SEP-2352: Key DCR registrations and tokens by AS issuer; reject cross-AS credential reuse
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- PHP
- Estrellas
- 1.6k
- Forks
- 173
- Merge medio
- 2 d 49 min
- PR fusionados (30 d)
- 23
Descripción
Implements SEP-2352 for the MCP Spec 2026-07-28 release.
Tracked by umbrella #338.
Spec summary
Clarifies that clients must key DCR/pre-registered credentials by AS issuer, maintain separate registration state per AS, and error on AS mismatch. CIMD
client_ids remain portable. Clients MUST NOT assume cross-AS credential validity.
PHP SDK changes
- TokenStorage (#315) and DCR (#320) must be indexed by AS issuer URL, not just by MCP server URL.
- Token cache key should be
(resource_server, as_issuer)tuples. - PRM/AS metadata discovery (#317, #318) must drive the binding.
- Client must error if a stored credential's bound issuer != the issuer currently advertised by the resource.
- Server-side: minimal — server PRM metadata document in
src/Server/Transport/Http/OAuth/must continue to advertise its AS issuer unambiguously.
Related
- Umbrella #338
- Extends #315 (TokenStorage) and #320 (DCR) with per-issuer keying
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Comienza con TokenStorage (#315), DCR (#320) y el trabajo de descubrimiento de metadatos PRM/AS en #317 y #318. Revisa el documento de metadatos del servidor en src/Server/Transport/Http/OAuth/ y rastrea cómo el issuer de AS anunciado llega a las credenciales de cliente y al almacenamiento de tokens. Se considera terminado cuando las credenciales y las entradas de la caché de tokens tienen ámbito de issuer, se rechaza la reutilización entre distintos AS y los ID de cliente CIMD siguen siendo portables.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- php
- Área
- api, authentication
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Tranquilo
- Claridad
- Bastante claro
- Aptitud para principiantes
- 48/100