MCP Apps Example Gallery (fable candidate)
Hosts six official Model Context Protocol MCP Apps examples as remote Streamable HTTP MCP servers you can try by URL without cloning or local setup.
README
MCP Apps Example Gallery (fable candidate)
Six official Model Context Protocol MCP Apps examples,
hosted as remote Streamable HTTP MCP servers you can try by URL — no cloning,
no npx, no tunnel. Each example has a stable endpoint, a gallery card with a
screenshot and sample prompt, and a Copy MCP URL action.
Independence notice. This gallery is an independent hosted adaptation of the official examples, pinned at upstream commit
10195ad9. It is not an official Model Context Protocol service and is not hosted or endorsed by the Model Context Protocol project. It is a demonstration service: no accounts, no stored user data, and no SLA.
The apps
| Slug | Example | Demonstrates | MCP endpoint path |
|---|---|---|---|
get-time |
basic-server-react | Smallest tool + ui:// resource + UI-to-tool round trip |
/apps/get-time/mcp |
budget-allocator |
budget-allocator-server | Editable form, charts, recalculation | /apps/budget-allocator/mcp |
cohort-heatmap |
cohort-heatmap-server | Dense interactive data visualization | /apps/cohort-heatmap/mcp |
customer-segmentation |
customer-segmentation-server | Filtering and chart interaction | /apps/customer-segmentation/mcp |
scenario-modeler |
scenario-modeler-server | Scenario templates + custom 12-month projections | /apps/scenario-modeler/mcp |
transcript |
transcript-server | Live browser speech transcription (Web Speech API) | /apps/transcript/mcp |
Non-MCP routes: / (gallery page), /apps.json (machine-readable manifest),
/healthz, /readyz, /version.
Production endpoints
The production gallery is served at
https://openwork-mcp-app-gallery-fable.vercel.app (verified against the
exact deployed commit; receipts in BENCHMARK_REPORT.md and TIMELINE.md):
- https://openwork-mcp-app-gallery-fable.vercel.app/apps/get-time/mcp
- https://openwork-mcp-app-gallery-fable.vercel.app/apps/budget-allocator/mcp
- https://openwork-mcp-app-gallery-fable.vercel.app/apps/cohort-heatmap/mcp
- https://openwork-mcp-app-gallery-fable.vercel.app/apps/customer-segmentation/mcp
- https://openwork-mcp-app-gallery-fable.vercel.app/apps/scenario-modeler/mcp
- https://openwork-mcp-app-gallery-fable.vercel.app/apps/transcript/mcp
Try an example in under five minutes
- Open the gallery page and press Copy MCP URL on a card (or copy an endpoint above).
- Add the URL as a remote MCP server in an MCP Apps-compatible host. In OpenWork, add it as a user-configured MCP server; other hosts have an equivalent "add remote MCP server" flow.
- Send the card's sample prompt (for example, for
budget-allocator: "Create a $1 million seed-stage budget I can adjust interactively."). - Interact with the app UI that renders inside the conversation.
Hosts without MCP Apps support still work: every tool returns an ordinary text and/or structured result as fallback, so a plain MCP client gets useful output without any UI.
Protocol support: the current 2026-07-28 protocol revision (per-request
envelope) and the stateless 2025-era Streamable HTTP flow
(initialize → tools/* / resources/*) are both served on every endpoint.
GET without a session and DELETE return 405 — serving is stateless and
there is no server-side session to terminate.
Run it locally
Requires Node.js 24.x and pnpm 10.28.0 (via corepack):
corepack enable
pnpm install --frozen-lockfile
pnpm dev
This builds the six app UIs into the immutable resource bundle, generates the
gallery site, and serves everything at http://localhost:3000.
Reproduce the complete release gate (formatting, lint, strict typecheck, provenance/notices verification, source-boundary scan, dependency audit, 95-test unit/gateway/contract matrix over both protocol eras, the production Vercel build, the architecture invariant, SBOM generation, and 15 browser tests through the upstream basic host):
pnpm exec playwright install chromium
pnpm release:check
Source attribution and provenance
- Upstream example source is copied at the exact pinned commit under
upstream/ext-apps/, with per-file digests and every local modification documented inupstream/manifest.jsonand verified bypnpm verify:notices. - Local modifications are limited to: import adaptation from MCP SDK v1 +
@modelcontextprotocol/ext-apps/serverto the gallery's SDK v2 adapter (src/mcp-app-adapter.ts), reading UI HTML from the bundled immutable store instead of the local filesystem, and a deterministic seeded dataset forcustomer-segmentation(stateless serverless instances must serve identical data). - Gallery-owned code is Apache-2.0 (
LICENSE); copied upstream code keeps its own notices (THIRD_PARTY_NOTICES.md). pnpm check:upstreamreports upstream drift read-only; upstream is never fetched at build or runtime.
Data behavior, logging, and limits
- No accounts, no cookies, no database, no uploads, no stored user state.
All app data is synthetic or request-bounded; the
transcriptapp's speech recognition runs in your browser (the host asks for microphone permission) and no audio or transcript ever reaches the gallery server. - No intended server-side network egress in any Wave 1 app; CI scans the runtime source for network, subprocess, and filesystem-write primitives.
- Logs contain only anonymous aggregate metadata: app slug, JSON-RPC method category, status, duration, and byte counts — never tool arguments, results, prompts, resource contents, headers, cookies, or IP addresses.
- Limits: 256 KiB request bodies; 512 KiB tool results; 1 MiB bundled UI
resources; a 15-second application deadline (30-second platform maximum);
per-instance concurrency caps with
429+Retry-Aftershedding; platform edge rate limiting on/apps/*/mcp. - Apps can be disabled individually (fail-closed
DISABLED_APP_SLUGSoverride); disabled apps stay visible asenabled: falsein/apps.json.
No SLA
This is a hosted learning and demonstration surface, run on provider infrastructure without an availability commitment. Endpoints may be rate-limited, disabled, or removed at any time.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.