11 min read
Just now
--
Three different terms, three different architectures, one underlying problem: how do you connect a large language model to the rest of the world?
Function calling, tool use, and MCP (Model Context Protocol) all let an LLM invoke external capabilities — search, database queries, API calls, code execution. But they make very different architectural choices about where the schema lives, who owns it, and how it evolves. Those differences are not academic. They determine whether your integrations survive a model change, whether your enterprise security team will approve them, and whether you have to rewrite your tooling every time a new frontier model ships.
This is my opinion on where each paradigm fits, what each gets wrong, and which one is likely to dominate enterprise adoption over the next two years.
Press enter or click to view image in full size
Disclaimer: The opinions expressed in this article are my own and do not represent the views of Google. This content is based solely on publicly available information.
The Three Paradigms
The fundamental question that divides these three approaches is: who owns the tool schema, and where does it live?
As shown in Figure 1, function calling puts the schema in the client, tool use puts it in the message body…
