MCP Server and Client について
MCPサーバーとクライアントの連携を学ぶ開発者向けの、最小構成のPythonサンプルです。FastMCPサーバーとMCP SDKクライアントを組み合わせ、クライアントからツールを呼び出して結果をターミナルに表示します。
主な機能
- 01最小構成のFastMCPサーバー例
- 02MCP SDKクライアント例
- 03クライアントからサーバーツールを呼び出し
- 04結果をターミナルに表示
活用シーン
- 01MCPの基本的な通信フローの学習
- 02Pythonクライアントからサーバーツールを試用
MCP 対応
MCP通信を実演します。クライアントがFastMCPサーバーに接続し、そのツールを呼び出します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP サーバーとクライアント
このプロジェクトは、Model Context Protocol(MCP)の最小限の動作例を提供します。基本的なツールを備えた FastMCP サーバーのセットアップ方法と、MCP クライアントを使った操作方法を紹介します。エージェントとツール間の MCP ベースの通信をどのように実装できるかを理解するための、シンプルな参考例です。
セットアップ手順
1. uv をインストールする
python -m pip install uv
2. プロジェクトを初期化し、環境を有効化する
uv init mcp_server_for_llm_agents
uv venv
source .venv/bin/activate
3. 依存関係をインストールする
uv pip install -r requirements.txt
サーバー
エージェントのツール(例:summarize_text、コード実行など)は、server.py に実装してください。 次のコマンドでサーバーを起動します。
uv run mcp dev server.py
または、次のコマンドを直接実行します。
python server.py
クライアント
公式 MCP SDK を使用するクライアントは client.py で定義されています。
次のコマンドで実行します。
python client.py
server.py の MCP サーバーに接続し、summarize_text、cat_fact、execute_code present などのツールを呼び出します。
実行後、現時点ではターミナルに結果が表示されます。
参考資料:
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。