ChatGPT Apps (built on MCP)
OpenAI just validated what I've been teaching for months: MCP is how users will interact with services. Here's why the Apps SDK announcement changes everything.
Did you know that OpenAI just made MCP the standard way to build integrations with ChatGPT? Users won't be clicking through your UI anymore. They'll be talking to it.
I'm incredibly excited about OpenAI's announcement of the Apps SDK today. Why? Because it's built entirely on top of MCP (Model Context Protocol). And if you've been following my work, you know I've been saying this for months: MCP is the new website.
The Problem with Multiple Chatbots
Here's the fundamental issue: Your users don't actually want to use your user interface. They want to talk to your application. Sure, you could build a chatbot for your app. But here's the catch: users don't want to juggle 30 different chatbots, especially when they have a single task that spans multiple services.
What they really want is to talk to one agent that can communicate with all these services on their behalf. And that's exactly what MCP enables and what ChatGPT is now supporting.
This Is Landing Soon
We're not talking about some distant future. This is in testing phases right now, and we're only months away from this experience landing in the hands of all our users. I believe this will provide a better experience for users and enable us to serve them better.
What OpenAI Got Right
The Apps SDK includes several critical features:
1. Authentication and Authorization Built-In
In the demo, when Alexei asked ChatGPT to "teach me something about machine learning" using Coursera, something amazing happened: the app wasn't even installed yet. ChatGPT prompted him to connect to Coursera, triggering an OAuth flow to authenticate his ChatGPT instance with his Coursera account.
This gives him access to all his private content, courses he's paid for, everything. And it's all built on OAuth 2.1. No proprietary protocols. No new standards to learn. Just standard OAuth that we already know and trust.
2. Dynamic Server Discovery
What impressed me most is that server discovery happens naturally based on the conversation. ChatGPT can decide that a specific app is appropriate to answer someone's question, even if the user didn't explicitly mention it. This feels magical to users, but it's just MCP doing its job.
3. Custom UI with Context
Coursera's response included custom UI, a stellar feature. You can return custom UI using a special resource, and it can include both visual components and text. Sometimes that combination is exactly what users need.
But here's what makes it truly powerful: you can communicate with the AI assistant about what's happening inside that UI. The agent understands what you're experiencing in the UI, making the conversation seamless. All you need to do as an app builder is provide the right tools, all MCP-focused.
4. Adaptive UI Presentation
The demo showed different UI presentation modes:
- Carousel for Canva's design iterations
- Full-screen for Zillow's property search with rich filtering
In the Zillow example, the UI became the main character, but the chat interface remained available. This meant users could interact with filters using natural language instead of learning Zillow's interface. Users don't want to learn your interface. They want to say what they want and have it happen.
OpenAI as the Universal Chatbot
This user experience (making the UI the main character with a chat interface to control it) is really powerful. OpenAI basically just made it so you don't need to build your own chatbot. OpenAI IS the chatbot, and you just expose your service to OpenAI appropriately.
Some Concerns (and Why They're Not Dealbreakers)
The Directory Model
OpenAI has a proprietary directory of servers that are allowed to be accessible. You can't just point ChatGPT at any MCP server. It needs to be in their directory.
I prefer the open web model over the App Store model. I think the web is great precisely because you don't need permission to join it. You just get a URL and boom, everyone can visit your website.
That said, there are legitimate trust, privacy, and security questions we're still working out as an industry. It makes sense that OpenAI is starting with a more closed ecosystem with specific guidelines around server capabilities, descriptions, authorization, and so on. I hope it opens up in the future, but I understand why they're starting here.
The Custom UX Approach
The way they handle custom UX is currently proprietary. There's a specific
openai
global variable you use to communicate between your UI iframe and the
parent frame.
I'd prefer something more standard, like MCPUI, which is already usable in other apps (just not ChatGPT yet). But here's the good news:
- I actually really like this API. I've read through all the documentation, and it's well thought out.
- I've already talked with folks from OpenAI about this, and they want this
to become a standard, not remain OpenAI-only. They started with the
openai
global variable because they want to validate their decisions before entering a standards process.
Based on my experience with OpenAI folks over the last several months, I genuinely believe they care about standards. That's really encouraging coming from one of the top players in the AI space.
What This Means for You
I've been telling you for months that MCP is basically the new website. This announcement from OpenAI validates that prediction. If you believe, as I do, that this represents a fundamentally better user experience, then now is the time to start learning MCP.
The fundamentals I've been teaching (MCP basics, advanced features, MCPUI, authorization) all apply directly to building apps for OpenAI's new Apps SDK. The skills you learn building MCP servers today will serve you well as this ecosystem evolves.
This is a really good thing for users. The user experience is phenomenally better when they can just say what they want instead of navigating through interfaces. And that means it's a good thing for us as developers too, because we can serve our users better.
The future is conversational. And it's built on MCP.