メインコンテンツへ移動

Tool 設定

Editor は、Agent バージョンの一部として Tool の選択内容を保存します。保存済み設定には、登録済み Tool、統合 Provider の Tool、Model Context Protocol(MCP)クライアントの Tool を追加できます。

Studio のワークフローと一般的な用途については、Editor の Tool を参照してください。

Tool のソース
Tool のソースへの直接リンク

ソース説明
登録済み ToolMastra ランタイムの Tool レジストリに登録された Tool
MCP クライアント保存済みのローカルまたはリモート MCP サーバー設定によって公開される Tool
統合 Tool従来の統合 Provider 設定によって解決される Tool
Tool ProviderComposio や Arcade など、MastraEditor に登録された Provider によって解決される Tool

コードで定義された Agent は、既存の Tool を維持します。editor オーバーライド設定により、Editor が Tool を追加・削除できるか、説明のみを変更できるかを制御します。

説明のオーバーライド
説明のオーバーライドへの直接リンク

選択した各 Tool には、Agent 固有の説明を保存できます。この説明により、元の Tool 定義を変更せずに、モデルに表示される内容を変更できます。

説明のみのモードでは、Editor はコードで定義された Agent にすでに存在する Tool にのみオーバーライドを適用します。MCP Tool の場合、Agent レベルの説明が MCP クライアントに保存された説明より優先されます。

2つのソースが同じ Tool ID に解決される場合、後のソースが説明を含む先の Tool 全体を置き換えます。解決順序を参照してください。

条件付き Tool セット
条件付き Tool セットへの直接リンク

Editor は、toolsmcpClientsintegrationToolstoolProviders フィールドに条件付きのバリアントを保存できます。実行時に、リクエストコンテキストの値に基づいて一致するバリアントがシャローマージされます。

ルール言語では、Prompt Block の表示条件と同じ演算子とネスト動作を使用します。

条件は、Tool フィールドのバリアントまたは MCP クライアント参照に適用されます。保存済み Tool エントリ内の Tool ごとの rules 値は、現在の Editor リゾルバーでは評価されません。

保存済み MCP クライアント
保存済み MCP クライアントへの直接リンク

editor.mcp 名前空間は、再利用可能な MCP クライアント設定を管理します。CRUD メソッドのシグネチャについては、mcp 名前空間を参照してください。

@mastra/mcp@mastra/editor の任意のピア依存関係です。Editor が実行時に Tool を読み込めるように、保存済み MCP クライアントを設定する前にインストールしてください。

npm install @mastra/mcp

トランスポート
トランスポートへの直接リンク

トランスポート保存される設定
stdiocommand と、任意の argsenvtimeout
HTTPurl と任意の timeout

保存済みの HTTP 定義では、任意のヘッダーは指定できません。予約済みの mastra__authToken 値がリクエストコンテキストに存在する場合、Editor はその値を Authorization: Bearer ヘッダーとして転送します。

フィルタリング
フィルタリングへの直接リンク

MCP Tool は、次の2つのレベルで許可リストを設定できます。

  1. サーバーレベル:保存済みサーバーの tools マップにより、そのクライアントを使用するすべての Agent の Tool を制限します。
  2. Agent レベル:Agent の MCP クライアント参照により、その Agent で使用できる残りの Tool を制限します。

Agent レベルの Tool 名には、名前空間付きの名前または修飾なしの名前を使用できます。明示的に空の tools マップを指定すると、すべての Tool が選択されます。現在のリゾルバーでは、Agent レベルの MCP 参照で tools を省略すると、どの Tool も選択されません。

名前空間
名前空間への直接リンク

MCP Tool は、競合を避けるために serverName_toolName 形式の ID を使用します。docs サーバーの search Tool は docs_search になります。

解決順序
解決順序への直接リンク

Editor は、次の順序で Tool レコードをマージします。同じ ID を持つレコードは、後のレコードが先のレコードを置き換えます。

  1. コードで定義された Tool
  2. 登録済みの保存 Tool
  3. MCP Tool
  4. 従来の統合 Tool
  5. V1 Tool Provider の Tool

独立した保存済み Agent では、コードで定義された Tool を除き、同じ順序が使用されます。静的なコード Agent のオーバーライドでは、従来の統合 Tool までで処理が終了します。

可能な限り、ソース間で一意の Tool ID を使用してください。競合が発生すると、フィールドがマージされるのではなく、先の Tool 全体が置き換えられます。