このプロジェクトについて
@mcp-z/clientは、Node.js(Node.js >= 22が必要)向けのプログラム可能なMCPクライアントライブラリです。単一プロセス内で複数のMCPサーバーへの接続、スクリプトからのMCPツールの実行、およびMCPサーバーの統合テストの記述をサポートしています。
サポートされているトランスポートには、stdioとHTTPが含まれます。HTTPサーバーは、`dialects: ['start']`オプションを使用した`start`ブロック拡張を介して、オプションで起動させることができます。また、HTTPサーバーがサポートしている場合は、Dynamic Client Registration (DCR)によるOAuthをサポートしており、`dcrAuthenticator`を通じてトークンストア(例:Keyv)を渡すことが可能です。
コアAPIは、`createServerRegistry(config, options?)`を介して作成されるサーバーレジストリを中心に構成されています。レジストリは、名前付きサーバーへの接続(`registry.connect`)、サーバーをまたいだ機能の検索(`registry.searchCapabilities`)、およびすべての接続の切断(`registry.close`)を行うメソッドを提供します。管理されたクライアントは、ツールの呼び出し(`callTool`)、プロンプトの取得(`getPrompt`)、リソースの読み取り(`readResource`)、およびツール、リソース、プロンプトの一覧表示を行うメソッドを公開しています。また、SDKの生のレスポンスを返すバリアント(`callToolRaw`、`getPromptRaw`、`readResourceRaw`)も利用可能です。
レスポンスラッパーは、構造化コンテンツを解析するための`json()`、最初のテキスト結果を取得するための`text()`、および生のMCPレスポンスを取得するための`raw()`といったヘルパーメソッドを提供します。レジストリのオプションには、起動プロセスの作業ディレクトリを指定する`cwd`、ベースとなる環境変数を指定する`env`、および起動するサーバータイプ(stdioサーバー、HTTP startブロック、またはその両方)を制御する`dialects`が含まれます。APIドキュメントはプロジェクトのドキュメントサイトで確認できます。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.