From 2a3c2ce0348ac156b864b638e43e337b27a06791 Mon Sep 17 00:00:00 2001 From: Jonathan Hefner Date: Wed, 7 Jan 2026 10:48:40 -0600 Subject: [PATCH] Add "How It Works" section to README MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Provides a concise 4-step overview of the MCP Apps architecture: tool call → `ui://` resource → sandboxed iframe → bidirectional communication via notifications. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- README.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/README.md b/README.md index eb95e8be8..3010859a5 100644 --- a/README.md +++ b/README.md @@ -6,6 +6,17 @@ This repo contains the SDK and [specification](https://github.com/modelcontextpr MCP Apps are a proposed standard inspired by [MCP-UI](https://mcpui.dev/) and [OpenAI's Apps SDK](https://developers.openai.com/apps-sdk/) to allow MCP Servers to display interactive UI elements in conversational MCP clients / chatbots. +## How It Works + +MCP Apps extend the Model Context Protocol to let servers deliver **interactive UIs** to MCP hosts. Here's how it works: + +1. **Tool call** — The LLM calls a tool on your server +2. **UI Resource** — The tool's definition links to a predeclared `ui://` resource containing its HTML interface +3. **Host renders** — The host fetches the resource and displays it in a sandboxed iframe +4. **Bidirectional communication** — The host passes tool data to the UI via notifications, and the UI can call other tools through the host + +This enables dashboards, forms, visualizations, and other rich experiences inside chat interfaces. + ## Overview This SDK serves two audiences: