← back
Building Interactive UIs in VS Code with MCP Apps — Marlene Mhangami & Liam Hampton, GitHub
Takeaway
MCP Apps combine tool execution with direct manipulation interfaces that keep users inside their current workflow.
Summary
- MCP Apps let tools return interactive interfaces inside chat instead of relying entirely on textual results.
- A tool result references an HTML UI resource that the host fetches and renders in a sandboxed iframe.
- The embedded app can call the server for fresh data, enabling interactive exploration without repeatedly prompting the model.
- Examples include editable Excalidraw diagrams, branded commerce checkout, and VS Code apps such as a flame-graph viewer.
mcp-appsvscodeinteractive-ui
Original description
The demo profiles a Go app running bubble sort and Fibonacci and the result renders as an interactive flame graph directly inside the VS Code chat window. Not a link. Not a text summary. A live iframe you can scroll and query, sandboxed for the same reason you put a hamster in a cage: so it cannot chew up your VS Code settings or call external APIs. The mechanism: an MCP tool returns both data and a resource reference pointing to a bundled HTML UI. VS Code fetches the HTML and renders it in a sandboxed iframe in chat. The app calls back to the server, the server returns fresh data, the UI updates. Shopify uses this pattern for checkout flows inside chat. Excalidraw uses it for interactive architecture diagrams you can drag and edit. Marlene and Liam walk through building one from scratch using a skill from the MCP repository. Speaker info: https://x.com/marlene_zw / marlenemhangami https://github.com/marlenemhangami https://x.com/liamchampton / liam-conroy-hampton https://github.com/liamchampton