modelcontextprotocol / modelcontextprotocol/csharp-sdk
When Absolute Uri passed as McpAuthenticationOptions.ResourceMetadataUri, /.well-known/oauth-protected-resource endpoint returns 404
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- C#
- Sterne
- 4.5k
- Forks
- 814
- Ø Merge
- 9 T. 19 Std.
- Gemergte PRs (30 T.)
- 4
Beschreibung
Describe the bug
When Absolute Uri passed as McpAuthenticationOptions.ResourceMetadataUri, /.well-known/oauth-protected-resource endpoint returns 404.
The logic for matching resource metadata endpoint is only limited to relative path, when an absolute path is passed in, the match fails and allows the resource metadata request to fall through the pipeline.
To Reproduce
- Provide an absolute Uri as as
McpAuthenticationOptions.ResourceMetadataUriwhen configuringAddMcp - Start the server
- Hit the resource metadata endpoint
Reproduced in sample server, added
AddMcp(options =>
{
// ... resource metadata object
options.ResourceMetadataUri = new Uri($"{serverUrl}.well-known/oauth-protected-resource", UriKind.Absolute);
}
in samples\ProtectedMCPServer\Program.cs
Expected behavior
Resource metadata request should be handled when provided a valid ResourceMetadataUri
Unit tests failure when configure the absolute uri
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit samples\ProtectedMCPServer\Program.cs und reproduziere die Anfrage unter Verwendung einer über AddMcp konfigurierten absoluten ResourceMetadataUri. Ermittle dann die Logik zur Zuordnung des Resource-Metadata-Endpunkts und die in diesem Issue referenzierten Unit-Tests. Als erledigt gilt die Aufgabe, wenn eine gültige absolute URI vom Endpunkt /.well-known/oauth-protected-resource verarbeitet wird, anstatt 404 zurückzugeben, und die relevanten Tests erfolgreich sind.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- csharp
- Bereich
- api, authentication
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 55/100