create-mcp-app

Installation
Summary

Interactive UIs for MCP tools that run inside Claude Desktop and other MCP-enabled hosts.

  • Combines an MCP tool (called by the LLM) with an HTML resource (renders the UI) linked via _meta.ui.resourceUri
  • Supports React with useApp hook, vanilla JS, Vue, Svelte, Preact, and Solid; clone the SDK repo to access working templates and API reference for each framework
  • Requires CSP configuration in resource contents for all network requests, including localhost; handlers must be registered before calling app.connect()
  • Includes advanced patterns for polling, chunked responses, binary resources, host context (theme/fonts), fullscreen mode, and streaming input via ontoolinputpartial
SKILL.md

Create MCP App

Build interactive UIs that run inside MCP-enabled hosts like Claude Desktop. An MCP App combines an MCP tool with an HTML resource to display rich, interactive content.

Core Concept: Tool + Resource

Every MCP App requires two parts linked together:

  1. Tool - Called by the LLM/host, returns data
  2. Resource - Serves the bundled HTML UI that displays the data

The tool's _meta.ui.resourceUri references the resource's URI.

Host calls tool → Host renders resource UI → Server returns result → UI receives result.

Quick Start Decision Tree

Framework Selection

Related skills

More from modelcontextprotocol/ext-apps

Installs
1.2K
GitHub Stars
2.2K
First Seen
Feb 10, 2026