Skip to content

OpenAI Tool Search

IDopenai_tool_search
CategoryOptimization
FeaturesNone
DependenciesNone

Enables OpenAI’s tool_search for agents with many tools. Instead of sending full parameter schemas for every tool upfront, only tool names and descriptions are sent initially. The model loads full schemas on-demand when it decides to call a tool.

This reduces prompt token usage significantly for agents with 15+ tools, without changing how tools are called or how results are returned.

None — this capability configures the LLM driver, it does not provide tools.

  1. Threshold check — tool_search only activates when the total tool count meets or exceeds the threshold (default: 15)
  2. Namespace grouping — tools are grouped by their capability’s category into namespace entries, giving the model semantic structure for discovery
  3. Deferred schemas — tools marked as deferrable have defer_loading: true set, meaning only name + description are sent upfront
  4. tool_search entry — a {"type": "tool_search"} activator is appended to the tools array, enabling the model’s built-in tool search index
  5. Transparent execution — tool calls and results work identically; the only difference is how tools are presented to the model

Each tool has a deferrable policy that controls whether its schema can be deferred:

PolicyBehavior
neverFull schema always sent (use for high-frequency tools like write_todos)
automaticDeferred when tool_search is active and above threshold (default)
alwaysAlways deferred when tool_search is active, regardless of threshold

Tool search requires model-level support. Currently supported:

Model familySupported
gpt-5.4*Yes
gpt-5.5*Yes
All other modelsNo (capability is silently ignored)

When the capability is enabled but the model doesn’t support tool_search, the feature is silently skipped — no errors, no behavior change.

{
"capabilities": ["openai_tool_search"]
}
{
"capabilities": [
{
"capability_ref": "openai_tool_search",
"config": { "threshold": 10 }
}
]
}

Lower thresholds activate tool_search with fewer tools. Set to 1 to always activate when the capability is present.

  • OpenAI-only — tool_search is an OpenAI Responses API feature; other providers (Anthropic, Gemini) ignore this capability
  • Supported OpenAI reasoning models only — earlier OpenAI models don’t support tool_search
  • No client-side tools — currently only applies to built-in (server-executed) tools