Skip to main content

Module registry

Module registry 

Source
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.
ServerTools
A connected MCP server’s advertised tools (input to Registry::build).
ToolSpec
One registered tool.

Enums§

Caller
The caller asking for definitions / permission.
Impl
How a tool is implemented.
Route
Where a call goes.
ToolClass
The tier a tool belongs to.

Functions§

pattern_matches
memory.* / workflow.run / * style pattern match.