mcd-demo について
mcd-demoは、シンプルなMCPサーバーを作成し、LangChainエージェントと連携させるデモプロジェクトです。天気、数学、テレメトリーのサーバーが含まれ、エージェントの実行前に起動します。
主な機能
- 01天気・数学・テレメトリーのサーバー例
- 02LangChainエージェントとの連携
- 03Azure OpenAI環境変数の設定
- 04Dockerでの数学サーバー実行
活用シーン
- 01シンプルなMCPサーバー作成のテスト
- 02MCPサーバーを使ったLangChainエージェントの実行
- 03コンテナ化した数学サーバーの検証
MCP 対応
天気、数学、テレメトリーの3つのMCPサーバーを実行し、LangChainエージェントに接続します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
mcd-demo
シンプルな MCP サーバーの作成と LangChain エージェントとの統合をテストします
前提条件
仮想環境を作成する
python3 -m venv venv
source venv/bin/activate
依存関係をインストールする
pip install -r requirements.txt
環境変数を設定する
以下の環境変数を設定します。モデルがデプロイされている Azure AI Foundry から値を取得してください。
export AZURE_OPENAI_API_KEY=<your_azure_openai_api_key>
export AZURE_OPENAI_ENDPOINT=<your_azure_openai_endpoint>
必要に応じて、MCP サーバーを設定するために以下の環境変数を設定できます。
export MCP_MATH_URI=http://<server-uri>:5001/sse
Note:これらの変数は、プロジェクトのルートディレクトリにある
.envファイルにも設定できます。
エージェントを実行する
MCP サーバーを起動する
エージェントを起動する前に、3 つすべての MCP サーバーを起動する必要があります。各サーバーは個別のポートでリッスンします。別々のターミナルで起動するか、バックグラウンドで実行できます。バックグラウンドで実行するには、次のようにします。
python weather_server.py &
python math_server.py &
python telemetry_server.py &
代わりに、math サーバーを Docker コンテナーで実行することもできます。その場合は、まず Docker イメージをビルドします。
make build
次に、コンテナーを実行します。
make run-local
Docker イメージをレジストリにプッシュする場合は、次のコマンドでタグを付けてプッシュします。
make login
make push
エージェントを起動する
python agent.py
MCP サーバーを終了する
pkill -9 -f weather_server.py
pkill -9 -f math_server.py
pkill -9 -f telemetry_server.py
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。