[Client] Implement Authorization Server Metadata discovery (RFC 8414)
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 55/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Tranquilo
- Stack tecnológico
- php
- Área
- api, authentication
Línea de trabajo
Comienza revisando Mcp\Client\Auth\AuthorizationServerMetadataDiscoverer y el Mcp\Server\Transport\Http\OAuth\OidcDiscovery existente para comprobar qué estructuras de metadatos son compatibles. Revisa los escenarios de conformidad auth/metadata-* y auth/scope-from-scopes-supported y, después, verifica el descubrimiento de RFC 8414, el fallback de OIDC, la caché del issuer y la cobertura de pruebas unitarias solicitada.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Context
Once the AS issuer is known (from PRM), the client must fetch its metadata at /.well-known/oauth-authorization-server (RFC 8414) to learn the authorization_endpoint, token_endpoint, registration_endpoint, scopes_supported, token_endpoint_auth_methods_supported, and grant_types_supported.
Scope
Mcp\Client\Auth\AuthorizationServerMetadataDiscoverer.- Cache resolved metadata per issuer (TTL via PSR-16 if
TokenStorageis backed by it). - Fall back to OpenID Connect discovery (
/.well-known/openid-configuration) when RFC 8414 endpoint 404s.
Conformance scenarios unblocked
auth/metadata-* (full set), auth/scope-from-scopes-supported.
Dependencies
Blocked by: #317 (PRM provides the issuer URL).
Acceptance
- Unit tests covering RFC 8414 + OIDC fallback.
- Reuses existing
Mcp\Server\Transport\Http\OAuth\OidcDiscoveryfor shape parity if practical.
cc @soyuka
- Lenguaje dominante
- PHP
- Estrellas
- 1.6k
- Forks
- 173
- Merge medio
- 2 d 49 min
- PR fusionados (30 d)
- 23
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.
Más de modelcontextprotocol/php-sdk
-
[Server] Handler type uses bare Closure, hard to decorate RegistryInterface under strict PHPStan AbiertoServer
Dificultad 1/5 Menos de una hora Aptitud para principiantes 78/100
modelcontextprotocol/php-sdk#468 · 2 comentarios ·
-
needs confirmation needs maintainer action Server
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
modelcontextprotocol/php-sdk#398 · 1 reacción ·
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
modelcontextprotocol/php-sdk#370 ·
-
enhancement
Dificultad 4/5 3-5 días Aptitud para principiantes 55/100
modelcontextprotocol/php-sdk#510 · 1 comentario ·
-
bug
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
modelcontextprotocol/php-sdk#504 ·
Todos los issues de modelcontextprotocol/php-sdk
Issues similares
-
priority: p3
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
googleapis/librarian#7636 ·
-
0. Needs triage bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
nextcloud/fulltextsearch#1011 ·
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100
coollabsio/coolify#11927 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100