はじめに
MCP リスナーは、モデル コンテキスト プロトコル (MCP) クライアントの初期化リクエストを自動的に処理し、仮想アセットが Server-Sent Events (SSE) を使用して HTTP 経由で送信された MCP メッセージを受信して応答できるようにします。クライアントからの接続は、クライアントが接続をクローズするか、MCP メッセージをクライアントに送信するときにエラーが発生するまで、オープンのままになります。
要件
- プロトコルバージョン 2024-11-05 をサポートし、Server-Sent Events (SSE) トランスポートを使用して HTTP 通信を行う MCP クライアント。
- このツールを使用するには、SOAtest/Virtualize 2024.1 以降が必要です。SOAtest/Virtualize は、Java 17 以降で実行するように構成する必要があります。
インストール手順
このツールは UI またはコマンドラインからインストールできます。
UI からのインストール
- [Parasoft ] > [設定] を選択し、[システム プロパティ] をクリックします。
- [JAR の追加] をクリックし、com.parasoft.virtualize.listener.mcp-<version>.jar ファイルを選択します。
- [適用] をクリックします。
- SOAtest/Virtualize を再起動します。
コマンドラインからのインストール
設定プロパティ ファイルの system.properties.classpath プロパティに com.parasoft.virtualize.listener.mcp-<version>.jar ファイルを追加します。例:
system.properties.classpath=<PATH_TO_JAR>/com.parasoft.virtualize.listener.mcp-<version>.jar
使用方法
MCP listener をインストールすると、仮想アセット設定パネルの [トランスポート] > [カスタム] で MCP Listener を利用できるようになります。仮想アセットの Virtualize Server ノードをダブルクリックすると、このパネルが開きます。
複数のカスタム リスナーがある場合、[実装の選択] メニューで使用するリスナーを選択できます。
設定
以下のオプションを設定できます。
接続の設定
| Port | リスナーのポートを指定します。値は 1 から 65535 でなければなりません。空の場合、リスナーは開始されません。 |
|---|---|
| SSE Endpoint | SSE エンドポイント パスを指定します。デフォルト値は /sse です。 |
| Worker Threads | メッセージの処理に使用するワーカー スレッドの数を指定します。 有効な最小値は デフォルト値は |
| Heartbeat Interval | MCP クライアントにハートビート コメントを送信する間隔を秒単位で指定します。ハートビートコメントは、接続がタイムアウトするのを防ぐために使用されます。 有効な最小値は デフォルト値は |
Logging 設定
Log Level | コンソールと[モニターの開始] ビューに表示する情報の量を指定します。以下のレベルを指定できます。
デフォルトは |
|---|
メッセージ レスポンダーの設定
MCP リスナーは、対応するレスポンダーで設定された任意のレスポンスを返しますが、標準的な MCP 通信のためには、レスポンスを JSON-RPC 2.0 仕様に従ってフォーマットすることを推奨します。
レスポンスに id フィールドが含まれている場合、それは無視され、代わりに元のリクエストの id が使用されることに注意してください。また、レスポンスに jsonrpc フィールドが存在しない場合は、値 2.0 で自動的に追加されます。
サード パーティのコンテンツ
この拡張機能は、以下のサード パーティのコンテンツを含みます。
- jackson-annotations (Apache License 2.0)
- jackson-core (Apache License 2.0)
- jackson-databind (Apache License 2.0)
- MCP Java SDK (MIT License)
- Reactor Core (Apache License 2.0)
- Byte Buddy (Apache License 2.0)
- Reactive Streams (MIT No Attribution)
- SLF4J (MIT License)
その他のライセンスの詳細については、拡張機能の licenses フォルダーを参照してください。
