Skip to content
Xavi Creus

AI

Tool Use (Function Calling)

Tool use, also called function calling, is the ability of an AI model to request that an external function or API be run and then use the result.

Definition

Tool use, also called function calling, is the ability of a large language model to ask for an external action to be performed and then use the result. The developer describes available tools, such as "look up order status" or "search the knowledge base", the model decides when one is needed, outputs a structured request with the right arguments, the application runs it and returns the result. The model itself never executes anything; it requests and reads.

In business, tool use is what turns a language model into something that can check stock, calculate a quote, create a calendar event, query a database or send a message. Every AI agent is built on it. Tool use also improves accuracy: instead of guessing a figure, the model calls a calculator or a database. Good implementations restrict what each tool can do, validate arguments, log calls and require approval for sensitive actions.

Tool use is now native to every major model and standardised across vendors through the Model Context Protocol, and models handle dozens of tools and multi-step sequences reliably. The misconception is that tool use gives the AI unrestricted access to your systems. The model only sees what you expose, with the permissions you grant. The design of those tools is where security and usefulness are decided.

In practice

A travel company's assistant uses tool use to check live availability, hold a booking and issue an invoice. The model decides which step comes next, but each function runs in the company's own systems under its own rules.

Why it matters

Tool use is the mechanism by which AI touches your real business data and systems. Deciding which tools an AI gets is a governance decision, and it should be made deliberately.

Frequently asked questions

What is function calling in AI?
Function calling is when a language model outputs a structured request to run a specific function with specific arguments, for example get_weather(city="Barcelona"). The application runs it and gives the result back to the model, which then uses it to answer. It is the technical basis of tool use and AI agents.
Can an AI model run code or access my systems directly?
No. The model only produces a request; your application decides whether to execute it and with what permissions. That separation is what keeps tool use safe, provided you validate inputs, restrict scope and log every call.

Need this explained for your company?

One hour with me is usually enough to turn the vocabulary into a decision.

Book a session