Open MCP Client:URL一つでアプリからMCPサーバーと対話 181

小编 ·

Open MCP Client:URL一つでアプリからMCPサーバーと対話

Open MCP Clientは、初のWebベースMCPクライアントプロジェクトで、1つのURLだけでAIアシスタントとMCPサーバーの対話を実現します。LangChainで構築されたLangGraphエージェントがMCPサーバーに接続してツールを呼び出し、フロントエンドはCopilotKitで構築されているため、スムーズなクライアント体験を提供します。現在、このプロジェクトはオープンソースとして公開されています。

Open MCP Client:URL一つでアプリからMCPサーバーと対話

Open MCP Clientとは?

Open MCP Clientは、初のWebベースのMCPクライアントプロジェクトであり、URL一つでaiアシスタントとMCPサーバーのインタラクションを実現します。本プロジェクトはLangChainで構築されたLangGraphエージェントを利用してMCPサーバーに接続し、ツールを呼び出します。フロントエンドにはCopilotKitを採用しており、スムーズなクライアントインタラクションを実現します。現在、本プロジェクトはオープンソース化されています。

Open MCP Client.jpg

機能と特徴

  • 超シンプルな統合:Open MCP Clientは極めてシンプルな統合方法を提供し、開発者はURL一つだけでMCP機能を自身のアプリケーションに組み込むことができ、通信層をゼロから構築する必要はありません。

  • 複数サーバー連携:複数のMCPサーバーへの同時接続をサポートします。例えば、一つのサーバーでGitHub操作を処理し、もう一つでSlackメッセージを管理するといったことが可能です。

  • 動的ツール検出:クライアントはサーバーが提供するツールを動的に検出し呼び出すことができ、固定的なロジックを事前に設定する必要がありません。

  • セキュリティと柔軟性:ローカルとクラウドの両方のデプロイをサポートし、アクセス制御メカニズムを内蔵しており、企業レベルのセキュリティ要件に対応します。

活用シーン

  • 開発フローの自動化:例えば、ユーザーはSlackを通じて要望を伝えることができ、Open MCP Clientが自動的にコード生成ツールとGitHubインターフェースを呼び出し、コードを生成してPull Requestを提出します。

  • ローカルリソースへのアクセス:MCPプロトコルを通じて、クライアントはデータベースやファイルシステムなどのローカルリソースに安全にアクセスできます。

  • AIアシスタントの強化:MCPサーバー経由で外部ツールを呼び出すなど、AIアシスタントに拡張機能を提供します。

技術詳細

  • プロトコルバージョンネゴシエーション:MCPサーバーとの互換性を確保します。

  • 機能ネゴシエーション:利用可能な機能を動的に特定します。

  • メッセージ伝送:JSON-RPC通信をサポートします。

  • ツール検出と実行:クライアントはサーバーが提供するツールを検出し呼び出すことができます。

インストールと利用ガイド

1. プロジェクトをクローン

git clone https://github.com/CopilotKit/open-mcp-client.git
cd open-mcp-client

2. 環境変数の設定

(1) プロジェクトのルートディレクトリに .env ファイルを作成します:

LANGSMITH_API_KEY=你的LangSmith密钥

(2) /agent フォルダ内に .env ファイルを作成します:

OPENAI_API_KEY=你的OpenAI密钥
LANGSMITH_API_KEY=你的LangSmith密钥

3. 依存関係のインストール

pnpm install

4. プロジェクトの起動

(1) フロントエンドを起動:

pnpm run dev-frontend

(2) エージェント(agent)を起動:

pnpm run dev-agent

または直接実行:

pnpm run dev

Open MCP ClientはMCPプロトコルの中核コンポーネントの一つであり、標準化されたインターフェースと動的ツール検出機能により、AIアシスタントと外部ツールのインタラクションを大幅に簡素化します。

GitHubリポジトリ:https://github.com/CopilotKit/open-mcp-client

プロジェクトDEMO:https://open-mcp-client.vercel.app/