Piero Savastano
ChatGPT's Apps Are MCP Servers - Reaction to @simone_rizzo98

ChatGPT's Apps Are MCP Servers - Reaction to @simone_rizzo98

December 22, 2025
5 min read
Table of Contents
index

Nice one, Simone. So, let’s talk about these ChatGPT apps that under the hood are nothing more than MCP servers. We’ve talked about this a lot in recent months. MCP is a protocol for exposing resources, tools, and prompts.

If you go into OpenAI’s documentation they tell you an app is made of three pieces. But the MCP server is actually the only real piece. The UI widgets, the graphical interface that pops up while you use the app inside ChatGPT (say Google Maps, or the product list) are actually an output of the MCP server. And then they say the third part is the model. That’s not true: the model is theirs, and their model, GPT, is the one that decides which resources of your app (which is an MCP server) to use.

In some cases these MCP servers can borrow the use of the language model and use it in turn, but the scheme OpenAI drew is app equals MCP server. Even if at first the documentation mixes it up for you, if you actually read it, it’s obviously that.

Where the interface comes from

The other thing I wanted to say is about this second part of the documentation, where they show that the piece of graphical interface your app throws into the ChatGPT interface. Where does it come from?

In the MCP server you describe tools: list the products, order a product, go to checkout, whatever. While you converse with ChatGPT, ChatGPT decides which tool to call. Control gets passed from your MCP server to your app. A tool is an MCP resource that contains a piece of graphical interface, which is what they call a widget, because in MCP the resources can be text, image, pieces of interface, any file whatsoever. This resource comes back inside your interface and then you interact with it.

MCP is back, A2A is not

MCP is back in the spotlight, having success in lots of different niches. The philosophy behind it, unlike Google’s A2A protocol which is having much less success, is different. In the A2A protocol they describe the interaction between agent and agent on the open web, and they don’t worry about what’s inside the agent. It’s communication between agent and agent, possibly agent and person, but the agent is a black box, they don’t care what’s inside it. You could put an MCP client inside, which in turn calls MCP servers.

I don’t want to make it too complicated, but basically MCP is a protocol not so much for artificial intelligence itself. It’s a network and integration protocol to expose resources, functions, and prompts. The MCP client, in this case the ChatGPT platform, is where the intelligence sits. MCP centralizes the intelligence, because it doesn’t tell you how your agent has to be built, it only tells you how your agent uses resources, and those resources can live on the network.

Obviously OpenAI embraced the protocol because the language model always stays on their servers, it’s their language model deciding here, it’s their interface deciding which MCP servers, which apps get called. And this is exactly typical of this protocol. They’re aiming to have a kind of app store like the one on phones, except instead of applications on your phone they’re apps inside the GPT interface. It’s not a given that they’ll pull it off, because a phone is hardware, and proposing a marketplace like that on the web, where it’s much harder to draw sharp boundaries, is another matter entirely. But let’s see what happens.

What about the Cheshire Cat

As for the Cheshire Cat, I’m adding this in. Not all contributors agree, because I asked around, and they’re still a bit suspicious of these protocols since they’re still unstable, still new. On one hand they’re right, but it’s also true that MCP has by now established itself and a minimum of support has to be offered. On A2A there are still doubts, even though in my view it’s a much more freewheeling protocol, much more open web, and nothing stops you from using MCP servers inside your A2A agent.

What I mean is: do I put it in the Cat, do I put both in, or just MCP, which already works in version 2? Let’s do a plugin so that the agents you build in the Cheshire Cat also work in A2A. Drop MCP in the comments if you like MCP. Drop A2A if you like A2A. And write a good loud curse if you like both.