Definition

Tool calling is a model capability and application pattern in which the model requests a named operation with structured arguments. The host application or orchestration runtime receives that request, checks whether it is valid and allowed, executes the operation when appropriate, and returns the result to the model or caller.

The model proposes the call. It does not directly acquire the permissions of the underlying service.

Simple example

A weather assistant can request get_forecast with a city and date. Application code validates the values, calls the weather provider, and supplies the forecast result. The model can then explain the result in natural language.

For a side-effecting tool such as create_refund, the application may also require user approval and an idempotency key before execution.

Why it matters

Tool calling connects model-generated requests to live data and external capabilities. It avoids asking the model to invent information that an API can provide. A structured request gives engineers a concrete boundary for inspection, authorization, logging, and testing.

One important nuance

A well-formed tool call is only a request. Tool names and schemas do not enforce business rules, ownership, or user intent. Validate arguments at the execution boundary, apply normal authorization, constrain side effects, and treat tool results as potentially untrusted input when they return to the model. Never rely on the model to police its own permissions.