🔒 MCP Server Authentication Reference Collection について
MCP サーバー認証リファレンスコレクションは、現行の Model Context Protocol 仕様における認証の仕組みを示すリファレンスサーバー群です。リモートおよびローカルの MCP サーバーで認証をどう扱うかを知りたい開発者に向けたものです。コードはデモ用であり、本番利用の前にはセキュリティ監査が必要です。
主な機能
- 01リモート、ローカル、両用途のサーバー例
- 02Entra ID と GitHub の ID プロバイダー例
- 03Azure API Management によるゲート例
- 04Protected Resource Metadata(PRM)の例
活用シーン
- 01MCP サーバーの OAuth 認証実装を参照する
- 02Entra ID のパブリッククライアントとコンフィデンシャルクライアントの構成を比較する
- 03Azure 上のリモート MCP サーバー向け API ゲートウェイ認証を設計する
MCP 対応
いずれも MCP サーバーであり、リモートまたはローカルの MCP サーバーに認証を追加する方法を示します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
🔒 MCP サーバー認証リファレンス集
現在のModel Context Protocol 仕様における認証の仕組みを実演するリファレンスサーバーです。
警告
ここに掲載されているコードは、デモ目的のみで使用してください。お客様の具体的なシナリオ(エンタープライズ内のルール、特定のセキュリティ制御、その他の保護メカニズムなど)は、このリポジトリで説明している内容と異なる場合があります。認証と認可が必要な本番環境向けおよび顧客向けのアセットについては、必ずセキュリティ監査と脅威モデリングを実施してください。
シナリオ
上記のサーバーは、さまざまな実行時シナリオに対応するよう設計されています。次のように分類されています。
- リモート MCP サーバー:
- ローカル MCP サーバー:
- ローカルまたはリモートで実行できる MCP サーバー:
対応する ID プロバイダー
| プロバイダー | シナリオ | サーバーの種類 | 実装 | 状態 |
|---|---|---|---|---|
| Entra ID | API Management による MCP サーバーへのアクセス制御。 | remote-mcp-apim-functions-python | ||
| Entra ID | セッション トークンにマッピングされた機密クライアント。 | entra-id-cca-session | ||
| Entra ID | WAM を使用するパブリック クライアント。 | entra-id-local-wam | ||
| GitHub | OAuth を使用し、セッション トークンにマッピングされた GitHub アプリケーション。 | github-app-session | ||
| Entra ID | API Management による Azure Functions MCP サーバーへのアクセス制御。 | remote-auth-mcp-apim-py | ||
| Entra ID | Protected Resource Metadata (PRM) を使用した App Service MCP サーバーへの API Management によるアクセス制御 | remote-mcp-apim-oauth-prm |
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。