What is Tool Calling?
Tool calling (function calling), told as a story about giving the parrot a toolbox list and letting it write request notes.
The guest asks today's exchange rate. The parrot answers with an old number.The parrot knows nothing after the day it closed its books. Where should today's number come from?
The parrot only talks. It can't calculate, search, or call by itself.Even with a calculator right there, it has no hands. All it can do is make up a number in words — hence the old number.
Tool calling: the parrot writes a request note, and the trainer runs the tool.First the parrot gets a list with each tool's name, description and blanks. When it needs one, it writes a request in fixed slots. The one who actually runs the tool is the trainer (the program).
Question, note, run, result bean, answer. Five steps.The result bean goes onto the tray; the parrot reads it and continues its answer. With several tools, it can write several notes at once.
The parrot doesn't use the tool — it asks. A wrong note comes back.Call a missing tool or fill a slot wrong, and the trainer sends the note back. A parrot that writes many notes to finish a job: the parrot that plans its own errands; a common standard for toolboxes: the toolbox standard.
Tool calling = giving the parrot a toolbox list and letting it write a request note when it needs one. The trainer (program) actually runs the tool, and the result comes back as beans on the tray.
Given tool schemas (name, description, parameters), the model doesn't run anything — it emits a structured request to call a tool with certain arguments. The runtime executes the real function and puts the result back into the context so the model can continue.
When grown-ups say it
- Tool calling / function calling
- Writing the request note. The parrot doesn't use the tool; it writes that it wants it used.
- Tool schema
- Name, description and slots per tool. The list the parrot gets, with fixed slots. → writing in fixed slots
- Tool result
- The result bean that comes back. It goes on the tray and the parrot reads it. → the tray in front of the parrot
- Runtime
- The trainer. The program that reads the note and runs the real tool.
- Parallel tool calls
- Several notes at once. Unrelated tools can be requested together.
- Error handling
- Sending a wrong note back. A missing tool, a wrong slot or a failed tool gets an error bean instead of a result.
- MCP
- The toolbox standard. A box any parrot can open. → the toolbox standard
- Agent
- A parrot that writes many notes. It picks the next tool from the result. → the parrot that plans its own errands