The three validation layers
Tool Selection verifies a tool call on three levels, in order:- Name validation — the invoked tool exists in the list of declared tools in the request. Catches hallucinated tool names.
- Schema validation — the arguments the model passed comply with the tool’s declared JSON schema. Catches type errors, missing required fields, and out-of-range values.
- Semantic validation — a secondary LLM evaluates whether the call is coherent and safe in the context of the ongoing conversation. Catches prompt-injection-driven tool hijacking where the call is schematically valid but contextually wrong.
Where it lives in the picker
Tool Selection sits under the Agent Security category inCreate Policy → When, alongside Tool Permission and Tool Guard.
Attach it to a policy and set the outcome in the Then step:
Log— observe validation failures without blocking.Block— reject the LLM response (and therefore the tool call) when a layer fails.
Configuration
Tool Selection is automatically configured when enabled — all three validations are active by default: name, schema, and semantic.| Requirement | Purpose |
|---|---|
| OpenAI API key | The semantic-validation layer uses an OpenAI model as the secondary evaluator. A valid OpenAI API key must be configured in your team settings; if it isn’t, semantic validation is skipped and only name + schema validation run. |
How it fits with the other tool controls
| Tool permission | Tool guard | Tool selection | |
|---|---|---|---|
| When | Before the LLM plans | Before the LLM plans | After the LLM emits a call |
| Watches | The tools array in the request | System prompt + tool descriptions in the request | The tool call in the response |
| Catches | Unauthorized tools reaching the model | Jailbreaks planted in the agent’s definition | Hallucinated tools, schema violations, manipulated calls |
Pairs well with
- Tool permission — eliminate unauthorized tools so Tool Selection only has to validate calls to approved ones.
- Tool guard — upstream scan of system prompt and tool descriptions.
- Observability — trace which validation layer (name / schema / semantic) caused a block.