MCP Tools Usage From LangChain / Example in TypeScript について
MCPサーバーのツールをLangChain ReActエージェントに接続するTypeScriptの例です。`convertMcpToLangchainTools()`を使って複数サーバーを並列初期化し、ツールをLangChain形式に変換します。
主な機能
- 01複数MCPサーバーの並列初期化
- 02LangChain StructuredToolsへの変換
- 03プロバイダー別のスキーマ変換
- 04代替例を含むOpenAIモデル設定
活用シーン
- 01LangChain ReActエージェントでMCPツールを利用
- 02複数MCPサーバーからツールを初期化
- 03対応LLMプロバイダー向けにツールスキーマを調整
MCP 対応
この例はMCPクライアントとして指定されたMCPサーバーを初期化し、そのツールをLangChain ReActエージェントで利用できるようにします。
詳細
LangChain からの MCP ツールの使用/TypeScript の例 
このシンプルなModel Context Protocol(MCP) クライアントは、LangChain ReAct エージェントによる MCP サーバーのツールの使用例を示します。
@h1deya/langchain-mcp-tools のユーティリティ関数 convertMcpToLangchainTools() を活用しています。
この関数は、指定された複数の MCP サーバーを並行して初期化し、利用可能なツールを LangChain 互換のツールの配列
(StructuredTool[])に変換します。
また、スキーマ互換性の問題を防ぐため、
LLM プロバイダー固有のスキーマ変換も実行します。
LLM として OpenAI の gpt-5.4-mini を使用します。
便宜上、OpenAI と Anthropic の LLM 用コードも含まれており、コメントアウトされています。
もう少し実用的な(会話型の)MCP クライアントは こちらで利用できます。
このアプリの Python 版は こちらで利用できます。
前提条件
- Node.js 18+
- Node.js ベースの MCP サーバーを実行するための npm 8+(
npx) - [任意] Node.js パッケージベースのローカル MCP サーバーを実行するための
npm 7+(
npx) - Python ベースの MCP サーバーを実行するためにインストールされた
[任意]
uv(uvx) - 必要に応じて、 OpenAI、 Anthropic、 Google GenAI、 および/または xAI の LLM API キー
使用方法
-
依存関係をインストールします。
npm install -
API キーを設定します。
cp .env.template .env- 必要に応じて
.envを更新します。 - 認証情報を誤ってコミットしないよう、
.gitignoreでは.envを無視する設定になっています。
- 必要に応じて
-
アプリを実行します。
npm start
ライセンス
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。