MCP ツールの応答スキーマとエージェント設計
MCP サーバーツールは、サーバーツールを参照するエージェントアクション (MCP ツールアクション) としてエージェントに追加され、他のエージェントアクションと同様に使用できます。ただし、Agentforce Builder では、すべての有効な MCP 応答スキーマが完全にサポートされるわけではありません。エージェントを作成するときに、変数の対応付け、アクションチェーン、入力と出力の表示の違いについて計画します。複雑な応答では、よりシンプルなエージェント設計パターンが必要になる場合があります。
必要なエディション
| 使用可能なインターフェース: Lightning Experience |
| 使用可能なエディション: Enterprise Edition、Performance Edition、Unlimited Edition、および Developer Edition。必要なアドオンライセンスはエージェント種別によって異なります。 |
サポートされる JSON 応答
Agentforce Builder のサポートは、プリミティブ値と項目アクセスが浅い場合に最適です。そのため、シンプルな構造化 JSON 応答を使用する MCP サーバ ツールを選択するか、可能な場合は重要な値をプリミティブ フィールドまたはシンプルな最上位フィールドとして公開するように応答を調整します。サポートされる JSON 応答には、最上位のオブジェクト、最上位のオブジェクトプロパティ、オブジェクトの最上位の配列が含まれます。現在、ネストされたプロパティ、オブジェクトの配列、動的オブジェクトのペイロードなど、より複雑な形状はエンドツーエンドでサポートされていません。
他のエージェントアクションと同様に、MCP ツールアクションの入力または出力に複数のレベルのプロパティ (ネストされたプロパティ、オブジェクトの配列、動的オブジェクトのペイロードなど) が含まれている場合、エージェントはアクション入力、アクション出力、変数の対応付けで最初のレベルのプロパティのみを使用できます。
| サポートされる JSON 応答 | 例 |
|---|---|
| プロパティ項目のないオブジェクト種別 | |
| 第 1 レベルのプロパティで、種別が object の場合、そのオブジェクトに properties 項目がなくても | |
| 第 1 レベルのプロパティで、種別がオブジェクトの配列の場合、オブジェクトにプロパティ項目はありません。 | |
Lightning 種別
すべてのエージェント アクションで Lightning 種別を使用して、入力と出力でデータの構造を定義、検証、表示します。MCP ツールの入力スキーマと出力スキーマは、Lightning タイプに常に対応付けられるとは限りません。これは、データ タイプがサーバによって定義され、プロトコルで幅広いデータ タイプがサポートされるためです。たとえば、データ型に any/or などの演算子が含まれている場合です。標準 Lightning タイプと、エージェント アクションで Lightning タイプを使用する方法について説明します。
データを Lightning タイプに解決できない場合、Agentforce レジストリの MCP サーバのレコード ページでツールの入力スキーマと出力スキーマを表示できます。ただし、アセットライブラリとエージェントでは、関連付けられた MCP ツールアクションの入力または出力は空で表示されます。
エージェントで MCP ツールアクションを使用することはできますが、入力または出力を変数に保存したり、下流のロジックや命令で使用したりすることはできません。
- アクションを確定的に別のアクションにチェーニングすることはできません。ただし、推論では、エージェントは関連する入力と出力を選択できます。
- 各入力と出力を変数に対応付ける必要があるため、アクションは推論命令で確定的に実行できません。
- Lightning タイプに解決されない出力は、条件文またはフィルタで使用できません。
最良の結果を得るには、エージェント設計で確定的動作に関するエージェントの推論を計画し、簡単な自然言語サブエージェントの指示を設定します。
Lightningタイプに対応付けられていない出力があるMCPツールの例を次に示します。
- MCP Server レコードページの入力スキーマと出力スキーマ:

- アセットライブラリの関連付けられた MCP ツールアクションの空の出力:

- エージェントの関連付けられた MCP ツールアクションの空の出力:


