Skip to main content
A tool is a function the agent can invoke during a call. It has a name, a JSON-Schema describing its arguments, and an implementation — either Python source we execute in the Call Processor’s tool sandbox, or an HTTP endpoint we call.

Anatomy

Built-in vs custom

  • Built-in tools (is_default = true) ship with the platform and can’t be deleted. Updating one flips modified_from_default = true so the dashboard can show that the tool diverges from the default.
  • Custom tools (is_default = false) are yours; you can create, update, and delete them freely.

Implementation types

Operations

Enabling a tool on an agent

Defining a tool doesn’t expose it to any agent. Each agent picks the subset it can call:
Behind that: POST /api/agents/{id}/tools with {tool_name, config, enabled}.

Where tools fit vs playbooks

A tool is a function. A playbook is a knowledge bundle — a prompt fragment plus a list of tool names it expects to be present. Attach the playbook, and the agent gets both the prompt context and a hint about which tools it should reach for.