🏓 MCP Ping-Pong Server by Remote Call について
Ping-Pongの例でリモートMCP呼び出しを示す、実験的な学習プロジェクトです。FastAPI、FastMCP、APIエンドポイント、SSE通信を学ぶ開発者向けです。
主な機能
- 01FastAPIとFastMCPのバックエンド
- 02APIエンドポイント経由のリモート呼び出し
- 03SSEトランスポートの例
- 04スレッドセーフなセッション管理
活用シーン
- 01リモートMCP呼び出しのパターンを学習
- 02HTTPエンドポイント経由でMCPツールを試用
- 03SSEによるMCP通信を検証
MCP 対応
APIエンドポイントとSSEを使ったリモートMCP呼び出しを示し、ping、pong、countコマンドを提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
インストール方法は未掲載です
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ツール一覧はまだ取得されていません
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
🏓 Remote Call による MCP Ping-Pong サーバー
FastAPI を介した MCP(Model Context Protocol)呼び出しを実演する、実験的かつ教育目的の Ping-Pong サーバーです。
機能
- ✅ API エンドポイントまたは SSE を介したリモート MCP 呼び出しに対応する FastAPI/FastMCP バックエンド
- 🔄 コマンド処理のための MCP 統合
- 🔐 スレッドセーフなセッション管理
クイックスタート
インストール
依存関係をインストールするには、次を実行します。
poetry install
1. API 経由で MCP ツールを呼び出す
サーバーを起動する
次のコマンドで FastAPI サーバーを起動します。
python mcp-api-server.py
サーバーは http://localhost:8080 で起動します。
UI
ブラウザーで mcp-api-client.html を開くと、UI を操作できます。
API エンドポイント
GET /ping-pong?prompt_name=<prompt_name>:指定したプロンプトを取得します。POST /ping-pong:MCP ツールのコマンド(ping、pong、count)を呼び出します。
2. SSE トランスポート経由で MCP ツールを呼び出す
次の例では、MCP サーバーとの通信に Server-Sent Events(SSE)を使用します。
SSE サーバーを起動する
python mcp-sse-server.py
SSE クライアントを起動する
python mcp-sse-client.py
出力例
Type a command (e.g., 'ping', 'pong', 'count') or 'exit' to quit:
>>> ping
Sending command: ping
Result: pong
>>> pong
Sending command: pong
Result: ping
>>> count
Sending command: count
Result: 2
参考資料
📄 ライセンス
MIT
コメント
Markdown 対応
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。