Vesster
All insights
ArchitectureAug 25, 20265 min read

Is MCP Just a Sexier Way to Call an API?

At the wire, an MCP server often wraps an API that already existed. The revolution is not the plumbing. It is that the reader changed, from a human programmer at build time to a model at run time.

Is MCP Just a Sexier Way to Call an API?

If you have a technical instinct, you have probably had the thought, and it is the sharpest question in this whole area. Underneath, an MCP connector very often does nothing more than wrap an API that already existed. Same endpoint, same call, the same data coming back. So where, exactly, is the revolution.

Honest answer, the one that respects your intelligence: at the level of the wire, you are not wrong. MCP is not a new law of physics. It frequently is an API with a bow on it.

However, the bow is the whole point, and dismissing it as cosmetic misses the one thing that actually changed. What changed is not the plumbing. It is who the plumbing is for, and when it gets used.

Thirty years of integration, built for a human

For most of the last three decades, the central problem in enterprise software was not intelligence. It was integration. Getting one system to talk to another. And the quiet enabler of the entire modern software world was the API: a published contract that says here is exactly how you may ask my system to do something, and here is exactly what you will get back.

But an API was designed with a very specific customer in mind. A human programmer. A person who reads the documentation, understands it, and writes precise code, in advance, that calls exactly the right function in exactly the right way. The integration is decided at build time, by a human, and then frozen into software. That assumption held perfectly for thirty years.

The agentic turn: the caller is now a model

And then agents broke the assumption. Because the thing reaching for the tool is no longer a programmer who read the manual last Tuesday. It is a model, deciding in the moment, at run time, which tool to use and how.

A model cannot sit down with a hundred different API manuals, each written in its own house style, and improvise flawless code against them on the fly. The old contract was written for the wrong reader. That is the gap MCP was built to close, and it is why the difference is real even when the endpoint underneath is identical.

Self-describing tools the model can read on the spot

Here is the concrete difference. An API describes itself to a human, once, in documentation a person reads before writing code. An MCP tool describes itself to a model, every single time, in a form the model can read and reason about in the moment. It announces: here is what I can do, here are the inputs I need, here is the situation in which you would want me.

So the integration stopped being something a programmer hard-wires in advance and became something an agent can discover and use on its own, at run time, with no one having written code for that exact combination beforehand. It is the same underlying call, re-presented for a completely different kind of consumer: a probabilistic one, that decides for itself what to reach for. Calling that cosmetic is like saying a restaurant menu is just a sexier version of the kitchen's inventory list. Technically the same items. Completely different reader. And the reader was always the point.

What this means for you

Two practical consequences follow, and both are easy to miss.

First, your existing APIs are not agent-ready just because they exist. An endpoint built for a careful human integrator can be a loaded weapon in the hands of a model that will call it confidently on the strength of a description it read in a possibly poisoned input. Exposing an API to an agent is a security decision, not a wrapping exercise.

Second, wrapping is not governing. Making a tool reachable by a model is the easy half. Deciding what the agent may actually do with it, per call, on whose authority, is the half that matters, and it belongs behind a policy decision point with narrow, typed capabilities, not a broad "the agent can access the system" grant.

So the question to bring to your next integration review is not "can we expose this API to our agent?" You almost always can. It is should this agent be able to call this action, with these arguments, in this situation, and who decides per call? MCP gives you a clean door. Whether it opens onto a boundary you control, or a ring of keys you handed to a probabilistic system, is entirely up to you.

If you want to make your existing systems genuinely agent-ready, safely, book a meeting.

Weighing this on a real process?

Bring it to us and we'll give you a straight read on where agents fit, and where they don't.