Return UI Resources for Branded Interactivity

Instead of sending plain text responses—which strip branding and reduce companies like Shopify or Hugging Face to data dumps—MCP Apps servers return HTML resources via MCP tool calls. Hosts like ChatGPT, Claude, VS Code, Cursor, Copilot, and GitHub render these as sandboxed, interactive components, preserving the provider's UI/UX and identity. For example, PostHog returns a funnel visualization widget; users click steps for follow-ups without leaving context. Early adopters like Shopify (millions of stores) and Hugging Face Spaces used MCPUI pre-standardization; now standardized with Anthropic and OpenAI support.

Interactions use bidirectional messaging: UI emits standardized events (e.g., on click) back to the host, which controls flow—routing to tools, prompts, or backend calls. This keeps all state in the host's conversation, avoiding direct UI-to-backend links that break context. Code is simple: servers register resources; hosts use a React component with a callback for events, like <MCPUI resource={html} onMessage={handleEvent} />.

Message Spectrum Balances UI and Host Control

MCP Apps define a control spectrum for UI messages:

  • Notification: UI handles logic locally (e.g., update cart quantity via provider backend), notifies host only.
  • Tool call: UI instructs host to invoke a specific MCP tool.
  • Prompt: UI fully delegates to host/model (e.g., "run this query").

This shifts from provider-owned journeys to host-orchestrated ones, enabling synergy: assistants compose relevant chunks (e.g., Google Calendar for anniversaries, Booking venue with map, Amazon product UI) tailored to user intent, pulling only atomic, context-aware pieces without full-site navigation.

Ushering a Chunk-Based Web and Massive Distribution

MCP Apps enable a "new web" of composable UI atoms, replacing tabbed browsing with single-chat orchestration—agents decompose tasks across providers (90% irrelevant UI discarded). Win-win: providers retain branding/journeys refined over decades; hosts leverage domain experts; users get familiar, proactive interfaces. Sam Altman noted 800M weekly ChatGPT users (10% world population, vs. internet's 13 years or iPhone App Store's ~5M launch)—potential 160x larger app market.

Spectrum supports all UI generation:

  • Predefined (black-box HTML, 8% cases).
  • Declarative (JSON structures rendered by host for consistent look).
  • Generative (model streams UI via MCP, as in Claude's features). Agnostic to source, interoperable with A2UI/WebMCP.

Evolving Spec and Quickstarts

Join tri-weekly workgroup (Discord/repo) for features like reusable views (reference/push data to avoid re-renders, e.g., Autodesk perf issues) and model-driven interactions (expose UI tools for agents to click/fill forms). Use XApps SDK (always spec-compliant, agentic "skills" generate apps code-free) for servers; MCP UIs SDK React component for hosts—same app runs everywhere (e.g., LibreChat to ChatGPT). 2026 prediction: global UI-in-chat standard, browsers obsolete.