Function calling is the structured form of tool use: the model emits a machine-readable request naming a function and its arguments, written in JSON, which your code validates and executes, then feeds the return value back into the conversation.
No jargon, no math
Tool use is the idea; function calling is the wire format. Instead of writing “I will now check the stock”, the model emits something like {tool: “get_stock”, args: {sku: “A-2210”}}. Your code parses that JSON, checks the arguments against a schema, executes the real function and puts the result back as a message. The model never executes anything itself: it writes a precise order, your system is the kitchen that cooks it. Where it breaks: models can invent argument values or pick the wrong function when two look alike, which is why schemas, enums and validation on your side are not optional.
Declare. You give the model a list of functions with names, parameters and types.
Emit. Mid-answer, the model outputs a JSON call: function name plus arguments.
Validate. Your code checks the call against the schema; malformed calls are rejected.
Execute. A valid call runs the real function inside your system.
Continue. The return value goes back as a message and the model finishes the answer.
Tool use is the capability of an AI model to do more than write text: it can call external tools, such as searching a database, sending an email or running a calculation, by emitting a structured request that software executes for real.
ReadStructured output is a mode where the model is forced to answer in a machine-readable format (JSON, a table, a fixed schema) instead of free text, so its answer can be validated, stored and passed to other software without a human retyping it.
ReadModel Context Protocol (MCP) is an open standard that lets an AI agent connect to your tools and data (files, databases, CRMs, APIs) through one common plug, instead of a custom integration for every tool.
Read§ 04
We design and ship AI systems with permissions, logs and human approval. It starts with a 30-minute scoping call.