The most important change that makes AI agents actually useful is not a smarter model. It is tool calling: the ability for a model to request that your code runs a function, returns the result, and then use that result to continue the conversation.
Without tool calling, an AI model can only write text. With it, the model can look up a customer record, book an appointment, query a database, send an email, run code, read a file, or trigger any other action your application exposes. That is the difference between a chatbot and an assistant that can do things.
How it works, step by step
- 1. You define a set of tools (functions) with names, descriptions, and parameter schemas.
- 2. You send a message to the model alongside the list of available tools.
- 3. If the model decides a tool is needed, it returns a tool call: a function name and arguments, not a final answer.
- 4. Your code receives the tool call, executes the function with those arguments, and sends the result back to the model.
- 5. The model uses the result to continue the conversation or complete the task.
Real examples of what tool calling enables
- Looking up an order status in your database and returning it in a support conversation.
- Booking a meeting by checking calendar availability and creating an event.
- Sending an email after drafting it and getting explicit user approval.
- Running a database query and summarizing the results.
- Searching a vector knowledge base for relevant documents.
- Executing code in a sandbox and returning the output.
- Processing a payment or updating a CRM record.
OpenAI and Anthropic implement it differently
OpenAI calls this feature function calling (or "tools" in newer API versions). The model returns a JSON object with a function name and arguments. Anthropic calls it tool use and uses a similar structure. The practical difference for developers is mostly in the API format; the underlying mechanism and mental model are the same.
MCP: standardizing how tools connect
The Model Context Protocol (MCP) is an emerging standard for defining tools in a way that any compatible model or agent framework can use. Instead of writing tool definitions specifically for OpenAI's format and then again for Anthropic's format, you write an MCP server and any compatible system can use it. This is why MCP is often described as a building block for more portable agent workflows.
Safety: the questions to ask about any tool-calling system
Tool calling introduces real risk. A model that can call tools can also call them incorrectly, call them with wrong parameters, or call them in response to prompt injection from external content. The questions to ask before deploying a tool-calling agent:
- Which tools are read-only and which can write or delete data?
- Does the system require explicit user approval before any write or destructive action?
- Are all tool calls logged with their inputs, outputs, timestamps, and executing user?
- Can a tool call be reversed if it produces the wrong result?
- What happens if the model passes invalid arguments to a tool?
- Is external content (web pages, user messages) isolated from the tool-calling decision path?
Approval steps matter more than capability
The most reliable tool-calling systems are not necessarily the ones with the most capabilities. They are the ones with the clearest permission boundaries. A system that requires user confirmation before sending an email or updating a record is slower but dramatically safer than one that acts immediately on model output alone.
A model that can take actions is powerful. A model that can take actions without review is a liability.
Why tool-calling ability should influence which AI you choose
When evaluating AI products for operational workflows, tool support is often more important than raw text quality. A model with strong tool calling, good parameter accuracy, and clear approval flows is more useful for real-world tasks than a slightly smarter model with poor tool use. Dera evaluates tools on task fit, and for action-oriented tasks, the tool-calling implementation is part of that evaluation.