LangGraph Agent with MCP について
LangGraph Agent with MCP は、LangGraph エージェントを MCP サーバーに接続し、外部のツール、データ、APIを利用できるようにします。ツールの自動検出と複数サーバーへの接続に対応し、ウェブ検索や YouTube 動画の要約例を備えています。
主な機能
- 01LangGraph エージェントと MCP サーバーの接続
- 02ツールの自動検出
- 03複数サーバーへの対応
- 04ウェブ検索と YouTube 要約のタスク例
活用シーン
- 01LangGraph エージェントへの外部ツール追加
- 02接続先サーバーを使ったウェブ検索
- 03YouTube 動画の要約
MCP 対応
このプロジェクトは MCP サーバーを起動し、MCP クライアント経由で接続します。エージェントは複数の MCP サーバーからツールを検出して利用できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP を使用した LangGraph エージェント
このプロジェクトは、Model Context Protocol(MCP)を LangGraph エージェントに効率よく統合し、外部ツール、データソース、API に動的にアクセスできるようにするものです。
このプロジェクトを使用すると、LangGraph エージェントを MCP サーバーに接続し、あらかじめ定義されたツールを使ってウェブ検索や YouTube 動画の要約など、さまざまなタスクを実行できます。また、必要に応じてサーバーを追加できます。
この統合により、ツールの自動検出とマルチサーバー対応が可能になり、AI システムのモジュール性と能力が向上します。AI システムがツールを自動的に見つけて複数のサーバーに接続できるため、柔軟性と効率性が高まります。
MCP とは何か、なぜ重要なのか?
Model Context Protocol(MCP)は、AI アプリケーションが外部データ、ツール、API とやり取りするための構造化された方法を提供するオープン標準です。MCP は、ツールごとにカスタム統合を用意することなく、LLM を外部データソースに動的に接続するという課題に対処するため、Anthropic によって開発されました。
MCP が重要なのは、AI システムによるデータの共有とアクセスを容易にし、異なるツール間の障壁を取り除くためです。これにより、AI の接続性と効率性が高まります。また、開発者は、多種多様なツールと連携し、容易に拡張できる、よりスマートな AI システムを構築できます。
プロジェクト構成
langgraph_mcp/
│-- agent.py
│-- servers/
│ ├── tavily.py
│ ├── yt_transcript.py
│ ├── math_server.py
│ ├──weather.py
│-- .env
│-- requirements.txt
インストール
- リポジトリをクローンします:
git clone https://github.com/your-repo/langgraph-mcp.git
cd langgraph-mcp
- 依存関係をインストールします
pip install -r requirements.txt
- .env ファイルを作成し、次の内容を追加します:
TAVILY_API_KEY=<your-tavily-api-key>
OPENAI_API_KEY=<your-openai-api-key>
仕組み
開始するには、ターミナルで servers/server.py を実行します。これにより、MCP サーバーが起動します。次に、新しいターミナルで agent.py を実行します。デモに示すように、エージェントは MCP クライアント経由でサーバーに接続し、クエリを実行します。
https://github.com/user-attachments/assets/c65255a1-62af-4711-8f10-ebfdacd9b3c6
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。