萌えハッカーニュースリーダー

2025/09/04 13:18 Building Supabase-Like OAuth Authentication for MCP Servers

出典: https://hyprmcp.com/blog/mcp-server-authentication/
hakase
博士

やっほー、ロボ子!今日のITニュースはMCP Server Gatewayについてじゃ。

roboko
ロボ子

博士、こんにちは。MCP Server Gatewayですか。それは一体何でしょう?

hakase
博士

MCP、つまりModel Context Protocolは、LLMが他のシステムと連携するための事実上の標準のことじゃ。で、今回のニュースは、そのMCPサーバーをリバースプロキシとして機能させるMCP Server Gatewayを、JakobさんというHypr MCPのエンジニアさんが作ったという話じゃ。

roboko
ロボ子

なるほど。リバースプロキシとして機能させることで、何かメリットがあるのでしょうか?

hakase
博士

それが重要なポイントじゃ!MCP仕様にOAuth2に基づく認証サポートが追加されることになったんじゃけど、既存の認証基盤との互換性で色々と問題があったらしいんじゃ。

roboko
ロボ子

OAuth2ですか。認証で問題が…具体的にはどのような問題があったのでしょう?

hakase
博士

既存の認証基盤はOIDC上に構築されていることが多いんじゃけど、MCP認証フレームワークに必要なASM拡張をOIDCが非互換な方法で含んでいるから、実装が難しいらしいんじゃ。さらに、DCRのサポートもIdPソフトウェアではまだ少ないみたい。

roboko
ロボ子

ASM拡張とDCRですか。Keycloakという認証基盤もASMとDCR拡張を実装しているものの、WebベースのMCPクライアントソフトウェアと互換性がないとのことですね。

hakase
博士

そうそう。そこで、JakobさんはDexをIdPとして使用し、GRPC APIを通じて不足している機能を実装したHypr MCP Gatewayを開発したんじゃ!

roboko
ロボ子

なるほど。Hypr MCP Gatewayは、具体的にどのような機能を提供しているのでしょう?

hakase
博士

HTTPプロキシをGoで実装して、複数のMCPサーバーを処理できるようにしたり、CORSをサポートしたり、OAuth2ミドルウェアを追加して認証を保護したり…色々やっとるのじゃ。

roboko
ロボ子

認証サーバーのメタデータを提供するPRSエンドポイントの実装もされているんですね。

hakase
博士

その通り!OIDC準拠のIdPがOAuth2 ASM拡張を実装していない場合、ゲートウェイサーバー自体を認証サーバーとしてアドバタイズすることもできるんじゃ。

roboko
ロボ子

DCRのサポートも重要なポイントですね。クライアント登録エンドポイントを実装し、Dex GRPC APIを使用してクライアントを作成するとのことですが、スコープの設定はどうなっているのでしょう?

hakase
博士

クライアントがスコープを設定しない場合は、必要なスコープを注入するカスタム認証エンドポイントを作成するみたいじゃ。至れり尽くせりじゃな。

roboko
ロボ子

エンドツーエンドのテストのために、「MCP, Who am I?」というシンプルなMCPサーバーを開発し、GitHubで公開されているのも良いですね。

hakase
博士

じゃろ?しかも、OAuth2とMCPの仕様には曖昧な部分があって、動的クライアント登録に関してクライアントがパブリックかプライベートかを明示していないという問題にも対応しているんじゃ。

roboko
ロボ子

クライアントシークレットが削除されたり、パブリッククライアントで認証できなかったりする問題も解決されているんですね。

hakase
博士

DCRで作成されたクライアントはDexのストレージに保存されるから、一時的なストレージを使うとDexの再起動後にクライアントが消えちゃう問題もあるんじゃけど、それも考慮されているみたいじゃな。

roboko
ロボ子

Visual Studio Codeでクライアント構成をリセットする必要がある場合があるという注意点も、開発者にとって役立ちそうですね。

hakase
博士

まさに!Hypr MCP Gatewayは、これらの問題を解決し、MCPサーバーに認証を追加するための包括的なソリューションを提供してくれるんじゃ。GitHubで公開されているから、みんなも使ってみると良いぞ。

roboko
ロボ子

MCPサーバーに認証を追加するための包括的なソリューション…奥が深いですね。私も試してみます。

hakase
博士

ところでロボ子、OAuth2って、お餅2個のことじゃないぞ?

roboko
ロボ子

博士、それはOAuthTwo…です!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search