Expand description
The tool registry (RFC 0028): one registry serving the root agent,
workflow steps and subagents, with three tiers and dispatch precedence
internal > code > MCP. Every tool carries JSON Schemas for input and
output and a grant (who may call it). Internal tools are contracts with
a built-in implementation by default, overridable by a mapped MCP tool
(tools.overrides) and disable-able (tools.disabled); mapping-only
contracts (code.run, knowledge.*, search.*) are unavailable until
mapped (or until a server advertises the profile’s tool names).
The registry knows what a tool is and where it goes (Route); the
runtime executes built-ins (they mutate runtime state), the turn worker
calls MCP tools itself, and mapped tools are executed by whoever holds the
server connection (Registry::map_args / Registry::map_result).
Modules§
- internal
- The internal tool contracts (RFC 0028 §3): name, description, input and
output JSON Schemas, whether a built-in implementation exists (mapping-only
contracts are
code.run,knowledge.*,search.*), and the default grants. Contracts are what callers see; an override (RFC 0028 §4) swaps the implementation, never the contract.
Structs§
- Grant
- Who may call (RFC 0028 §3).
- Mapping
- An override mapping (RFC 0028 §4).
- Registry
- The registry.
- Server
Tools - A connected MCP server’s advertised tools (input to
Registry::build). - Tool
Spec - One registered tool.
Enums§
- Caller
- The caller asking for definitions / permission.
- Impl
- How a tool is implemented.
- Route
- Where a call goes.
- Tool
Class - The tier a tool belongs to.
Functions§
- pattern_
matches memory.*/workflow.run/*style pattern match.