Tool calling is the capability that lets a large language model (LLM) use external tools like APIs, functions, databases, or services. By producing a structured request to invoke a tool, an application or the model provider can then execute a task and return a result to the model. This is how a model moves beyond generating text to fetching live data and taking actions.
Tool calling, function calling, and “tool use” refer to the same core mechanism, but “tool calling” is the broader, more current term, covering not just developer-defined functions but also built-in and externally connected tools.
In short: tool calling lets a model invoke external tools by emitting structured calls—the umbrella term for function calling, built-in tools, and connected tools alike.
How tool calling works
The application and the model pass control back and forth, with execution always outside the model:









