Tools reference#

ツール関連のファンクション、ビュー、およびタイプのリファレンス。ガイドスタイルのドキュメントについては、 Tools reference を参照してください。完全なネイティブツールカタログについては、 Native tools を参照してください。

カタログビュー#

helpb.tools#

AIDBが認識するすべてのツールの統合された読み取り専用カタログ-ネイティブツール、登録されたSQLツール、およびキャッシュされたMCPツールのユニオン。

Column

Type

Description

name

text

ツールの名前。

description

text

ツール定義の一部としてモデルに表示されます。

tool_type

text

'native_tool'、'sql_tool'、または`'mcp_tool'`

params

jsonb

native_tool/sql_tool`の場合 `{name, type, description}`オブジェクトの配列。 `mcp_tool`の場合 サーバーの生のJSONスキーマ `inputSchema。

read_only

boolean

ツールが決して書き込めないことが知られているかどうか。 mcp_tool`行の場合は常に`false — 読み取り専用モード を参照してください。

promoteb.sql_tool_registry#

バック登録されたSQLツール。 aidb.tools は、ほとんどのクエリーが代わりに使用するユニオンビューです。これを直接照会して、 SQLツールに保存されているクエリテキストを表示します。

Column

Type

Description

name

text

一意のツール名主キー。

description

text

モデルに見せられました。

query_text

text

`${name}`プレースホルダーを使用した保存されたSQLステートメント。

read_only

boolean

ツールが読み取り専用として適用されるかどうか。

return_type_hint

aidb.ToolParam[]

文書化された返品の形状。現在モデルには表面化されていません。

params

aidb.ToolParam[]

ツールの宣言されたパラメーター。

created_at

timestamp

作成時間。

updated_at

timestamp

最終更新時間。

promoteb.mcp_registry#

登録された外部MCPサーバー。

Column

Type

Description

name

text

一意のサーバー名主キー。

url

text

サーバーのMCPエンドポイント。

transport

text

'streamable_http'`または'sse'`。

headers

jsonb

保存された要求ヘッダー。 `aidb_users`では読み取れません シークレットを保持する可能性があります。

headers_env

text

代わりにヘッダーを読み取る環境変数名。 `headers`と相互排他的。

tool_filter

text[]

フィルタリングされた場合、このサーバーからインポートされたツール名。

created_at

timestamp

登録時間。

updated_at

timestamp

最終更新時間。


ツール管理機能#

promoteb.create_sql_tool#

パラメーター化されたSQLクエリーをツールとして登録します。

パラメーター#

Parameter

Type

Default

Description

name

TEXT

Required

ツールの一意の名前。

description

TEXT

Required

ツール定義の一部としてモデルに表示されます。

sql_statement

TEXT

Required

実行するクエリー。宣言されたパラメーターごとに`${name}`プレースホルダーを使用します。

params

JSONB

Required

`aidb.tool_params()`で構築されたツールのパラメーター。

read_only

BOOLEAN

true

`true`の場合、読み取り専用であることが証明されていない限り、登録時にステートメントを拒否します。

return_type_hint

JSONB

NULL

クエリの結果の形状を文書化します。現在モデルには表面化されていません。

返品#

TEXT — ツールの名前、成功時。名前が既に使用されている場合、またはステートメントが単一の呼び出し可能、読み取り専用に準拠したif read_only => true ステートメントでない場合に発生します。

例#

SELECT aidb.create_sql_tool(
    name             => orders_by_customer,
    description      => Look up recent orders for a customer by id.,
    sql_statement    => SELECT id, status, total FROM orders WHERE customer_id = ${customer_id} ORDER BY created_at DESC LIMIT ${limit},
    params           => aidb.tool_params(
        aidb.tool_param(customer_id, INT, The customers id.),
        aidb.tool_param(limit, INT, Maximum number of orders to return.)
    ),
    read_only        => true,  -- optional; enforced, not just descriptive. Default: true
    return_type_hint => NULL   -- optional; documents the returned row shape, same aidb.tool_params() shape as `params`. Default: NULL
);

promoteb.delete_tool#

SQLツールまたはMCPサーバー登録を名前で削除しますサーバーが一緒にアドバタイズしたすべてのツールを削除します。ビルトインネイティブツールは削除できません。

パラメーター#

Parameter

Type

Description

name

TEXT

ツールまたはサーバーの名前。

返品#

TEXT — 成功した場合の削除された名前。そのようなツールまたはサーバーが存在しない場合、またはname がネイティブツールの場合に発生します。


promoteb.import_mcp_tools#

外部MCPサーバーを登録し、アドバタイズするツールをインポートします。

パラメーター#

Parameter

Type

Default

Description

name

TEXT

Required

サーバー登録の一意の名前。

url

TEXT

Required

サーバーのMCPエンドポイントURL。

transport

TEXT

'streamable_http'

'streamable_http'`または'sse'` —現在`'streamable_http'`のみが完全にサポートされています。

headers

JSONB

NULL

送信する要求ヘッダー。 `headers_env`と相互排他的。

tool_filter

TEXT[]

NULL

これらのツール名のみをインポートします。サーバーがアドバタイズするすべてのインポートを省略します。

headers_env

TEXT

NULL

ヘッダーJSONを保持する環境変数。保存するのではなく、使用するたびに新しく読み取られます。 headers`と相互排他的。名前は :ref:`AI pipelines <Configuring AIDB> 接頭辞で始まる必要があります。

返品#

TEXT —成功した場合のサーバーの名前。名前が使用されるか、URLに到達不能であるか、tool_filter と一致する宣伝ツールがない場合に発生します。

例#

SELECT aidb.import_mcp_tools(
    name        => weather,
    url         => https://weather.example.com/mcp,
    transport   => streamable_http,  -- optional; streamable_http or sse. Default: streamable_http
    headers     => NULL,               -- optional; request headers to send, for example, an auth token. Mutually exclusive with headers_env. Default: NULL
    tool_filter => NULL,               -- optional; import only these tool names. Default: NULL (import everything the server advertises)
    headers_env => NULL                -- optional; env var holding the headers JSON instead of storing it. Mutually exclusive with headers. Default: NULL
);

promoteb.refresh_mcp_tools#

登録済みのMCPサーバーのアドバタイズツールを再取得し、キャッシュを更新します。

パラメーター#

Parameter

Type

Description

name

TEXT

登録されたサーバーの名前。

返品#

INTEGER —現在キャッシュされているツールの数 tool_filter 適用後


promoteb.get_mcp_tools#

現在登録されているすべてのツールネイティブ、 SQL、およびMCPを同様にMCP tools/list 型の記述子に変換します。

返品#

TABLE(name TEXT, description TEXT, input_schema JSONB) — aidb.tools のツールごとに1行。


パラメーターヘルパー#

promoteb.tool_param#

1つのSQLツールパラメーターを構築します。

パラメーター#

Parameter

Type

Default

Description

name

TEXT

Required

パラメーターの名前。

type

TEXT

Required

パラメーターのSQLタイプ。

description

TEXT

Required

モデルに表示される説明。

返品#

JSONB — これらのうちの1つ以上をaidb.tool_params() に渡します。


promoteb.tool_params#

1つ以上のaidb.tool_param() 結果を組み合わせるか、引数なしで呼び出されるは空のパラメーターリストを宣言します。

パラメーター#

Parameter

Type

Description

params

VARIADIC JSONB[]

0個以上の`aidb.tool_param()`結果。

返品#

JSONB — aidb.create_sql_tool() のparams またはreturn_type_hint に渡します。


promoteb.param / promoteb.params#

汎用のパラメーター仕様コンストラクター。列挙コンストレインの引数を受け入れるネイティブツールによって使用されます。 aidb.param() はさらにenum_values TEXT[] を受け入れます。通常は直接必要ありません。 aidb.tool_param() /aidb.tool_params() は、create_sql_tool() のコンストラクターです。