MCP ゲートウェイアーキテクチャ概要
MCP Gateway システムの全体的なアーキテクチャを概説します。ゲートウェイ自体、管理バックエンド、サポート API、ストレージメカニズム、および外部サービスとの統合方法を含みます。
アーキテクチャ図
モジュール説明
MCP ゲートウェイ(mcp-gateway)
- エントリーポイント:
/*
すべての HTTP リクエストを統一的にリッスンし、アプリケーション層で設定に基づいて動的にルーティング - ルーティング層:プレフィックスとサフィックス
/sse
、/message
、/mcp
に基づいてルーティング - プロトコル解析:JSON-RPC 形式を解析し、メソッドとパラメータを抽出
- ツール配信:ツール名を解析し、呼び出しパラメータを構築
- 外部サービス呼び出し:外部サービスへの呼び出しを開始し、結果を解析
- 設定ストレージ(読み取り):設定情報を読み込み
管理バックエンド(web)
- プロキシ設定モジュール:MCP ゲートウェイプロキシ/ツールの設定に使用
- チャットラボ:MCP のテスト用のシンプルなチャット、主に開発者と自社開発システムへの統合が必要なユーザー向け
- ユーザー管理モジュール:ユーザー権限と情報の管理
管理バックエンドサービス(apiserver)
- メインサービスモジュール:設定管理、ユーザーインターフェース、チャット履歴クエリなどの API を提供
- 設定ストレージ(書き込み):変更をデータベースに書き込み
- 通知機能(送信側):設定変更時に MCP ゲートウェイにホットアップデートを通知
設定ストレージ
- すべての MCP サービス、ツール、ルートなどの設定を保存
- 複数の実装をサポート:ディスク(yaml)、SQLite、PostgreSQL、MySQL など
Web データストレージ
- ユーザーデータ、セッション記録などを保存
- 複数の実装をサポート:SQLite、PostgreSQL、MySQL など
外部サービス
- ツール呼び出しに必要なバックエンドサービスシステム