Tool Use with Claude
Implement tool use with Claude API: define tools, handle tool calls, and build reliable function-calling agents.
Last updated
After this section you can
- Choose a tool_choice setting, and replace forced tool use on models that reject it
- Guarantee schema-valid arguments with strict tools and say what still needs checking
- Handle parallel calls, server tools and pause_turn, and decide between the Tool Runner and a manual loop
Tool Use: Giving Claude Superpowers
You already know the four-piece relay. This section is the Claude-specific control panel: who decides whether a tool runs, how to guarantee valid arguments, parallel calls, tools Anthropic runs for you, and letting the SDK drive the loop.
The relay never changes; the settings around it do. tool_choice decides who picks, strict guarantees the arguments, one user message carries every result, and server tools skip the relay entirely because Anthropic runs them.