MCP Server Research Project について
MCP サーバー実装の研究資料とデモを含むリポジトリで、サーバー動作やメッセージ調整を調べる開発者向けです。Python デモではクライアント登録やメッセージ転送を行い、ウェブダッシュボードで活動と履歴を確認できます。
主な機能
- 01MCP サーバーの参照実装
- 02クライアントの登録と追跡
- 03ハートビート・データ・コマンドの処理
- 04メッセージのルーティング
- 05ウェブ活動ダッシュボード
- 06インメモリのメッセージ履歴
活用シーン
- 01メッセージ調整サーバーのデモ実行
- 02クライアントのメッセージ送信テスト
- 03接続とシステム活動の監視
- 04メッセージ履歴の確認
MCP 対応
このプロジェクトが説明するのは Message Coordination Protocol で、サーバーとクライアントのデモを含みます。Model Context Protocol との互換性は入力に記載されていません。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP サーバー研究プロジェクト
このプロジェクトには、MCP(Message Coordination Protocol)サーバーの実装に関する調査とデモが含まれています。
概要
Message Coordination Protocol(MCP)は、分散システムが通信し、アクションを調整するための標準化された方法を提供します。このリポジトリには、プロトコルのリファレンス実装と、実際に動作する様子を示すデモが含まれています。
プロジェクト構成
mcp_server_research/
├── docs/ # Documentation files
├── src/ # Source code
│ └── demo/ # Demo implementations
└── requirements.txt
はじめに
前提条件
- Python 3.8+
- Flask
- Requests
インストール
# Clone the repository
git clone https://github.com/ckz/mcp_server_research.git
cd mcp_server_research
# Set up virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
デモの実行
デフォルト設定で MCP サーバーを実行するには、次のようにします。
cd src/demo
python simple_mcp_server.py
環境変数を使ってカスタム設定で実行するには、次のようにします。
cd src/demo
DEBUG=true PORT=5001 python simple_mcp_server.py
ダッシュボードを表示するには、http://localhost:5001(または指定したカスタムポート)にアクセスしてください。
クライアントのデモを別のターミナルで実行するには、次のようにします。
cd src/demo
python client_demo.py --server http://localhost:5001 --duration 30 --interval 2
サーバーが接続を受け入れ、クライアントがメッセージを正常に送信する様子を確認できます。
デモの機能
シンプルな MCP サーバーのデモでは、以下の機能を持つ基本的なメッセージ調整プロトコルサーバーを実装しています。
- 接続されたクライアントを登録して追跡します
- さまざまなメッセージタイプ(ハートビート、データ、コマンド)を処理します
- メッセージを適切な宛先にルーティングします
- システムのアクティビティを監視するためのウェブダッシュボードを提供します
- メッセージ履歴をインメモリで保持します
ライセンス
MIT
コントリビューション
コントリビューションを歓迎します!お気軽にプルリクエストを送信してください。
変更履歴
2024-02-24
- 接続失敗時のクライアントコードのエラー処理を適切に追加
- 接続管理を改善するため、クライアントでセッションを使用
- クロスオリジンリクエストに対応するため、サーバーに CORS サポートを追加
- API 呼び出しが停止したままになるのを防ぐため、タイムアウトを実装
- 環境変数でデバッグモードを設定できるように変更
- flask-cors の追加と werkzeug のバージョン指定により、依存関係の問題を修正
- コードコメントのドキュメントを改善
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。