Controls how the model may use the tools declared for this request.
'auto' — the model decides whether to call a tool. The default whenever tools are present.
'none' — tools stay declared (and cached) but the model must not call one this turn. The
way to force a prose/JSON answer without changing the cached tool block.
'required' — the model must call some tool.
{ name } — the model must call the named tool.
Forcing a call typically SUPPRESSES text output, and Anthropic additionally disables extended
thinking under a forced tool choice — never assume text accompanies a forced call.
Controls how the model may use the tools declared for this request.
'auto'— the model decides whether to call a tool. The default whenever tools are present.'none'— tools stay declared (and cached) but the model must not call one this turn. The way to force a prose/JSON answer without changing the cached tool block.'required'— the model must call some tool.{ name }— the model must call the named tool.Forcing a call typically SUPPRESSES text output, and Anthropic additionally disables extended thinking under a forced tool choice — never assume text accompanies a forced call.