ToolDescriptor
The UI-facing definition of a tool registered in code. The agent editor shows a selection from this list; it does not accept free-text input.
Shape: object
| Property | Required | Type | Description | Rules |
|---|---|---|---|---|
name |
yes | string |
The tool name. Used in agent definitions. | — |
description |
no | string |
The description that lets the model understand when to call the tool. | — |
jsonSchema |
no | string |
The arguments’ JSON schema. | — |
requiresApproval |
no | boolean |
Whether explicit approval is required before the call. | — |
source |
no | string |
The tool’s source. null for tools defined in code; the server name for tools coming from a remote MCP server. |
— |
runsOnClient |
no | boolean |
Whether the tool’s body runs on the caller (typically a browser) instead of on the server. | — |
effect |
no | ToolEffect |
The tool’s effect class. Defaults to ToolEffect.Read. | — |
requiredPermission |
no | string |
The permission name a caller must hold to call this tool, or null when the tool declares none. |
— |
timeout |
no | string |
The longest duration this tool’s call may run, or null to use the installation default (AgentPrismOptions.Tools.DefaultTimeout). |
pattern ^-?(\d+\.)?\d{2}:\d{2}:\d{2}(\.\d{1,7})?$ |