概要
Tools API は Shannon のツールレジストリへの直接アクセスを提供します。利用可能なツールの一覧表示、パラメータ Schema の確認、タスクワークフローを経由せずにツールを直接実行できます。機能
- ツール検索 — カテゴリフィルタリングで利用可能なすべてのツールを閲覧
- JSON Schema 確認 — 任意のツールの完全なパラメータ Schema を取得
- 直接実行 — Agent ワークフロー外でツールを呼び出し
- 危険なツールのブロック — 危険とマークされたツールは Gateway レベルで自動的に非表示・ブロック
- 使用量トラッキング — 実行ごとに Token 消費量とコストを記録
- Session コンテキスト — オプションで Session にバインド(
session_idとuser_idのみに制限)
セキュリティモデル
Shannon はdangerous とマークされたツールに対して厳格なセキュリティ境界を適用します:
- List エンドポイントは
exclude_dangerous=trueを自動適用 — 危険なツールは公開されません - Get および Execute エンドポイントは危険なツールに対して
403 Forbiddenを返します - ツールメタデータは各 Gateway インスタンスで 5 分間インメモリキャッシュされます
- ツール実行の HTTP クライアントタイムアウトは 120 秒です
ツール一覧の取得
利用可能なすべてのツールを一覧表示します。危険なツールは自動的に除外されます。クエリパラメータ
カテゴリフィルタの例
レスポンス
ツールの取得
指定したツールのメタデータとパラメータ Schema を取得します。パスパラメータ
レスポンス
ツールの実行
指定した引数でツールを直接実行します。パスパラメータ
リクエストボディ
session_id を指定した場合、ツールには session_id と user_id のみが渡されます。セキュリティのため、tenant_id などの他の Session フィールドは除去されます。レスポンス
レスポンスフィールド
ツールレスポンスオブジェクト
エラーレスポンス
すべてのエラーは標準フォーマットに従います:
危険なツールのエラー
Get または Execute で危険なツールにアクセスしようとすると以下が返されます:次のステップ
カスタムツール
カスタムツールの作成と登録方法を学ぶ
エージェント
ツールを自動的に使用する Agent を設定