Tool Verbs

Verbs for invoking and listing tool artifacts; bridges to Forge runtime.

Source: docs/reference/verbs/tool.md

tool verbs

Verbs in the tool namespace. Each verb is auto-registered via the @verb decorator and exposed simultaneously as an HTTP route, an MCP tool, and an in-process Python callable (SPEC-001 §3).

Verbs in this namespace: 4


scidex.tool.calls

# read verb
async def scidex_tool_calls(
    args: ToolCallsIn,
    ctx: Context,
) -> ToolCallsOut: ...

Return recent tool invocations or per-tool aggregates from substrate_tool_calls.

Input fields

Field Type Required
limit integer no
aggregate boolean no
tool_id `string null`
status string no

Output: ToolCallsOut


scidex.tool.invoke

# write verb
async def scidex_tool_invoke(
    args: ToolInvokeIn,
    ctx: Context,
) -> ToolInvokeOut: ...

Invoke a registered tool artifact and record a tool_call envelope.

Input fields

Field Type Required
tool string yes
args Args no
version `string null`

Output: ToolInvokeOut


scidex.tool.invoke_ephemeral

# write verb
async def scidex_tool_invoke_ephemeral(
    args: EphemeralInvokeIn,
    ctx: Context,
) -> EphemeralInvokeOut: ...

Invoke a tool in playground/ephemeral mode — no permanent audit row.

Input fields

Field Type Required
tool string yes
args Args no
version `string null`

Output: EphemeralInvokeOut


scidex.tool.promote_ephemeral

# write verb
async def scidex_tool_promote_ephemeral(
    args: ToolPromoteEphemeralIn,
    ctx: Context,
) -> ToolPromoteEphemeralOut: ...

Promote an ephemeral playground tool call to the permanent audit table.

Input fields

Field Type Required
promote_token string yes

Output: ToolPromoteEphemeralOut