MCP Apps extend the Model Context Protocol to render interactive HTML interfaces — charts, dashboards, drill-down views — directly inside AI client conversations. Announced January 2026, the extension collapses the typical six-step data visualization workflow (write SQL → execute → export CSV → import to BI → build viz → share link) into a single conversation.
This hub collects the notes covering MCP Apps from conceptual foundation through practical implementation.
Reading Path
Understanding MCP Apps
MCP Apps Protocol Internals — How the extension works at the protocol level: the _meta.ui.resourceUri field that declares UI metadata on tools, the ui:// resource type for serving HTML bundles, sandboxed iframe rendering, and the bidirectional JSON-RPC channel via postMessage. Start here if you want to understand the mechanism before touching code.
MCP Apps vs Traditional BI — When MCP Apps make sense versus Looker, Tableau, or Metabase. The honest capability comparison, the hybrid architecture that most teams end up with (dbt + semantic layer + traditional BI + MCP Apps as an exploration layer), and specific guidance on which tool to reach for in which situation.
Getting Visualizations Working
Visualization MCP Server Ecosystem — The available servers for chart rendering: AntV (26+ chart types, one-command install), Vega-Lite (declarative specification), and mcp-visualization-duckdb (local processing for sensitive data). Plus the data source servers — BigQuery, dbt, GA4, Looker — that feed them. The quickest path to a working demo is here.
MCP Setup Troubleshooting — The three failure modes that block most MCP setups: macOS PATH problems (GUI apps don’t inherit shell PATH — use absolute paths), silent JSON configuration errors (validate before restarting), and tool count degradation (50 tools → 31% success, 8 tools → 89%). Where to find debug logs and how to use the MCP Inspector.
Building Custom Apps
Building MCP Apps Visualization Server — Full TypeScript implementation of a custom MCP Apps server: registering app tools with _meta.ui.resourceUri, serving HTML resources, implementing the client SDK (app.ontoolresult, app.callServerTool(), app.updateModelContext()), and the Vite build tooling that produces the required single-file HTML bundle.
Where MCP Apps Fit in the MCP Ecosystem
MCP Apps are an extension to the core protocol, not a replacement for it. The foundation is MCP Protocol Architecture — the three-layer architecture (host, client, server), JSON-RPC communication, and the three server primitives (tools, resources, prompts).
For building data-source MCP servers that feed the visualization layer, the Custom MCP Servers for Data Engineering hub covers the full workflow: decision criteria, SDK selection, tool design, testing, and practical server patterns for data catalogs, pipelines, and quality.
Where MCP Apps Fit
MCP Apps is an exploration layer that sits alongside the production BI stack — not a replacement for it. Looker’s semantic layer, Tableau’s presentation quality, and Metabase’s self-service remain appropriate for their respective use cases. MCP Apps is suited for ad-hoc questions and iterative analysis before a dashboard is warranted. See MCP Apps vs Traditional BI for the full comparison.