[Client] Implement Cross-App Access (token exchange, RFC 8693)

オープン
#325 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
45/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
静か
技術スタック
php

調査の方向性

McP\Client\Auth\Grant\TokenExchangeGrant から始め、token-endpoint の認証と builder の要件について依存関係 #321 および #318 を確認してください。記載されたリクエストパラメーターを対象の形として使用し、その形に対するユニットテストのカバレッジを追加して、適合性シナリオ auth/cross-app-access-complete-flow を実行してください。シナリオが成功すれば完了です。

索引モデルが issue の本文から書いたものです。

説明

auth Client enhancement improves spec compliance

Context

Cross-App Access (XAA) lets an MCP client present an existing IdP id_token to the MCP server's authorization server to obtain a scoped access token for the MCP resource. Uses grant_type=urn:ietf:params:oauth:grant-type:token-exchange (RFC 8693).

Scope

  • Mcp\Client\Auth\Grant\TokenExchangeGrant:
    • Body params: grant_type=urn:ietf:params:oauth:grant-type:token-exchange, subject_token=<idp_id_token>, subject_token_type=urn:ietf:params:oauth:token-type:id_token, audience=<mcp_resource>, optional scope.
    • Authenticate to token endpoint per #321.
  • Builder API to supply IdP id_token + IdP issuer/token_endpoint discovery (needed by the conformance harness; see #325).

Conformance scenarios unblocked

auth/cross-app-access-complete-flow.

Dependencies

Blocked by: #321, #318.

Acceptance

  • Unit tests for token exchange request shape.
  • Conformance: scenario passes.

cc @soyuka

主要言語
PHP
スター
1.6k
フォーク
173
平均マージ
2日 49分
マージ済み PR(30日)
23

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

modelcontextprotocol/php-sdk のほかの issue

modelcontextprotocol/php-sdk の issue をすべて見る

似ている issue

PHP の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。