Free tools Windows power users keep installed
One-click scans. No signup required.
If a model replies without calling a tool, that does not necessarily mean the tool is broken. With automatic tool selection, the model may decide it can answer directly. Check, in order, whether the tool was included and permitted in the request, what tool-choice mode was set, what the structured response contains, and whether your application executed any returned call.
First, check whether the tool was available to this request
A tool described in your application or prompt is not necessarily available to the model on a particular request. Log the exact request sent to the provider and verify that it includes the intended tool definition, the expected model and endpoint, and any routing or allowlist settings. OpenAI’s function-calling guide treats tool definitions and tool selection as separate parts of the request.
As an Amazon Associate I earn from qualifying purchases.
- Confirm the tool appears in the request actually sent, not just in application configuration.
- Check that an allowed-tools restriction or routing layer has not excluded it.
- Make sure the description explains when the tool should be used and its argument schema fits the operation the user requested. Clear definitions help the model choose appropriately, but wording alone does not force a call.
Check the tool-choice setting
Automatic selection allows the model to answer without a tool call. OpenAI documents these options for its API; their names and behavior should not be assumed to match other providers’ interfaces.
| OpenAI tool-choice mode | What it permits or requires |
|---|---|
auto |
The model may make no tool calls, one call, or multiple calls. |
required |
The model must make at least one tool call. |
| A forced function | The model is directed to call a specific function. |
allowed_tools |
Restricts the available choices to a specified subset. |
none |
Prevents tool calls. |
These modes are documented in the OpenAI function-calling guide. If your workflow cannot continue without a tool, use a supported required or forced mode rather than relying on automatic selection. Check that the selected mode is supported by the model and request path you are using.
#1 Best Overall
Do not confuse strict schemas with forced tool use
A strict schema governs the arguments when a function call is emitted; it does not, by itself, make the model choose that function. OpenAI documents strict schema adherence for supported models and request configurations. The schema must also fit the supported subset: an incompatible configuration can be rejected. See the OpenAI function-calling guide for the applicable requirements.
Inspect the structured response, not just the displayed text
Rendered assistant text may not show the full outcome of a request. Inspect the provider’s structured response and determine whether it contains a tool-use event or function call, a final answer, a refusal, or another stop condition. A tool mentioned in a prompt is not evidence that one ran. Anthropic’s tool-use documentation describes tool use as a model selecting a function based on the conversation; the response and stopping condition indicate what happened on that turn.
Rank #2
If a call was returned, trace the application’s tool loop
A returned call still needs application-side handling. Anthropic’s documented flow has the application extract the call, execute the operation, and send the tool result in a subsequent request. Check each handoff:
Do these 3 things before closing this tab:
1Repair Windows errors before they cause bigger problems2Fix the driver behind crashes, sound loss and screen glitches3Clear out junk files and repair common Windows errors- Did your application detect and parse the returned tool call?
- Did it dispatch the requested operation to the correct implementation?
- Did that operation succeed, and did the application capture its result or error?
- Did the application send the matching tool result back to the model and continue the conversation?
These are separate questions from whether the model selected a tool. A call present in the response but absent from your logs points toward dispatch or execution; a successful execution without a follow-up result points toward the continuation path. Anthropic’s tool-use documentation outlines this application-managed cycle.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.A quick diagnostic order
- Log the exact request, including model, endpoint, tool definitions, tool-choice mode, and allowed-tool restrictions.
- Verify the intended tool is included and permitted, and that its description and argument schema match the requested operation.
- Check whether the selection mode permits no call. If a call is mandatory, choose a supported required or forced mode.
- Confirm the model, endpoint, and request configuration support that choice and any strict schema features you use.
- Inspect the structured response to see whether the model returned a call, a refusal, a final answer, or another stop condition.
- If there is a call, trace execution, result submission, and conversation continuation in the application.
OpenAI and Anthropic document provider-specific interfaces and flows; parameter names and semantics are not interchangeable. Because the provider, model, endpoint, SDK, and request are implementation-specific, these checks can narrow the cause but cannot identify it without examining your actual request and response.
Quick Recap
Best Value
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




