Model Context Protocol (MCP) について
Streamable HTTP トランスポートを使う MCP サーバーとクライアントのデモで、@mcp_tool デコレーターによるツールの自動登録を備えています。Dockerfile と環境設定を含み、MCP の実装を学ぶことやデプロイの出発点として適しています。
主な機能
- 01Streamable HTTP によるステートレスなサーバー
- 02@mcp_tool デコレーターによるツールの自動登録
- 03コンテナ化用の Dockerfile
- 04OpenAI SDK を用いたデモクライアント
活用シーン
- 01MCP サーバーとクライアントの基本実装を学ぶ
- 02デモサーバーをコンテナ化してクラウドに配置する
- 03Python におけるツール登録の方法を確認する
MCP 対応
MCP サーバーとして Streamable HTTP 経由でツールを公開し、OpenAI SDK を使う MCP クライアントの例も含みます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Model Context Protocol(MCP)
Model Context Protocol(MCP)は、モデルを外部のデータソースやツールに接続する標準化された方法を提供することで、LLM を活用した AI アプリケーションの構築を可能にする強力なフレームワークです。
MCP は、LLM を外部のデータソースやツール(関数)に接続するためのプロトコルです。
MCP サーバー
このリポジトリには、デモ用 MCP サーバーをセットアップするためのコードが含まれています。内容は以下のとおりです。
- スケーラブルな本番環境へのデプロイに対応した、ストリーミング可能な HTTP トランスポートを使用するステートレス MCP サーバー。
@mcp_toolデコレーターによるツールの自動登録。- サーバーをコンテナー化するための Docker ファイル。
- サーバーはローカルまたは Docker 内で実行でき、任意のクラウドプロバイダーにデプロイできます。
セットアップ
- uv をインストールします
curl -LsSf https://astral.sh/uv/install.sh | sh
- 依存関係をインストールします
uv sync
MCP クライアント
このリポジトリには、OpenAI SDK を使用するデモ用 MCP クライアントをセットアップするためのコードが含まれています。詳しくは クライアント をご覧ください。
注:理解しやすいよう、サーバーとクライアントを同じリポジトリに配置しています。必要に応じて、別々のリポジトリ/プロジェクトに分けることもできます。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。