Every AI app you pay $20/month for is making a bet: that you'll use it enough to justify the cost, but not so much that your usage eats their margins. That bet almost never lands cleanly.
Heavy users get throttled or quietly downgraded to cheaper models. Light users overpay for capacity they never touch. And the app maker is stuck in the middle, trying to balance model quality against unit economics. This is the core tension behind a new open-source project called MUP (Model UI Protocol), which argues the fix is to stop building AI apps entirely and start building inside the LLM itself.
The Argument Against AI Apps
The logic goes like this: when you subscribe to an AI writing tool or AI code assistant, the company wraps an LLM (large language model, the AI brain behind tools like ChatGPT or Claude) in a custom interface and charges a flat fee. But LLM API calls cost real money per use. So the company has to decide how much model quality you actually get, and that decision is driven by their margins, not your needs.
The obvious escape hatch is "bring your own API key" - you pay the LLM provider directly and only for what you use. But that requires knowing what an API key is, how to set one up, and how to manage billing. It is a developer-only path. Regular users are locked out.
MUP's answer is a third option: build the tool as a single HTML file that runs directly inside your LLM's chat window.
How It Actually Works
A MUP file is plain HTML containing three things: a small JSON manifest (a configuration block that tells the LLM what the tool can do), a visual interface built with standard HTML and CSS, and JavaScript functions that both you and the AI can call. You click a button, the AI sees it. The AI calls a function, you see the result update in real time.
The file runs as an MCP server (Model Context Protocol - Anthropic's standard for connecting external tools to Claude). Drop the HTML file in a folder, point your Claude setup at it, and the UI panels appear alongside your chat. No build step, no framework, no package manager.
The project ships with 20 examples: a pixel art editor, a drum machine, a Kanban board, a chess game, a slide deck builder, a multi-track music arranger. Each is a single file. The chess game, for instance, lets you move pieces by clicking while Claude analyzes positions and suggests moves through the same shared board state.
Clever Concept, Real Limitations
The design philosophy is deliberately constrained. MUP files cannot talk to each other directly - the LLM coordinates between them. There is no complex state management or inter-component communication. This keeps things simple but also limits what you can build. A Kanban board works. A full project management suite does not.
The bigger question is whether "build inside the chat" actually scales beyond demos. The 20 examples are impressive for single-file experiments, but real workflows need persistence, collaboration, and integrations that a sandboxed HTML panel cannot provide. MUP also currently works with Claude Code and Claude Desktop, with a standalone agent option that supports other providers including OpenAI and Google.
Still, the underlying critique is sharp. The subscription AI app model does create misaligned incentives around model quality, and the API-key alternative does exclude most users. MUP is one attempt at a middle path - not the final answer, but a concrete prototype of what "tools that live inside the model" could look like.