中級管理者

MCP ツールガバナンス:誰がどのツールを呼べるかを 1 つの権限面で

外部の MCP サーバーをゲートウェイの 1 つの /mcp エンドポイントの背後に集約し、キーグループ単位のツール allow/deny とラベルフィルターを適用。呼び出し / 違反 / セッションは完全に監査されます。

コミュニティが実際に不満を言っていること

エージェントフレームワークを多数の MCP サーバーに接続すると、権限が発散します。誰がどのツールを呼べるかを統一的に制御できず、問題が起きたときの監査証跡もありません。エージェントごとに個別設定すると、認証情報が散らばりポリシーがずれていきます。

「Claude Code を特定の MCP ツールだけに制限するには」は、プラットフォームチームから繰り返し出る質問です。

GateLLM の実現方法

GateLLM には MCP プロキシが内蔵されています。複数の外部 MCP ツールサーバー(streamable HTTP / SSE)を 1 つの /mcp エンドポイントの背後に集約し、エンドポイント、認証ヘッダー(そのまま転送)、ラベル、優先度、遅延読み込みを一度だけ設定します。キーグループは allow/deny リスト(deny が優先)とラベルフィルターでツールを統制します。モデルを統制するのと同じ ACL 面です。

ツール一覧が長くなると、コンテキスト予算で絞り込み、組み込みの BM25 検索で関連ツールを見つけます。MCP ツールの呼び出し、アクセスルールの違反、セッションの確立はすべて監査ログに残ります。

MCP サーバーの認証情報がエージェントに渡ることはありません。ツールへのアクセスはゲートウェイのキーグループで付与・取り消しします。

実際に効果が出る 5 つのレバー

  • サーバー集約:streamable HTTP / SSE の MCP サーバーを 1 つの /mcp エンドポイントの背後に
  • 遅延読み込み:ツールは初回利用時に検出され、起動コストと攻撃面を削減
  • ツール単位の ACL:キーグループ単位の allow/deny(deny が allow を上書き)、ラベルフィルターは一括適用
  • コンテキスト予算 + BM25:長いツール一覧を予算に合わせて絞り、関連ツールを検索で特定
  • 完全監査:ツール呼び出し / アクセス違反 / セッション確立をログに残し、エクスポート可能
詳細手順:外部 MCP サーバーのオンボーディング(docs)

FAQ