A pattern where the model returns structured data naming a function and arguments; your application runs that function and feeds the result back so the model can continue—bridging LLMs to real tools and APIs.
Function calling (often called tool use) is the contract between an LLM and your code: you advertise tools with names, descriptions, and parameter schemas; the model selects a tool and emits arguments; you validate, execute, and return a result that becomes part of the conversation.
Why it appears everywhere in agent stacks
Agents need to act, not only generate text. Function calling is how they query databases, create tickets, run builds, or call internal APIs. Reliability usually comes down to schema design, clear descriptions, and structured errors—not fancier prompts alone.
See also
Strict structured outputs, the ReAct loop, and MCP for standardizing tool connectivity.
