MCPs βΊ Dev tools βΊ a2uicatalog
# A2UI Atomic Catalog **Real rendered UI in the conversation β charts, gauges, dashboards, study apps β without the model writing a single line of HTML.** The agent names a component from a fixed vocabulary of 474 typed atoms. A renderer that already knows that component draws it. So a hallucinated atom is a *parse error*, not a broken screen β the failure surfaces before anything reaches the user. No signup, no API key, no configuration. Add the URL and start. ``` https://a2uicatalog.ai/mcp ``` ## Try it > Using the A2UI catalog, render a stat_card with value "1,234", label "Daily users", delta "+12%". > Build me a full-screen revision app for the French Brevet β subject tabs for Maths, > FranΓ§ais and Histoire-GΓ©o, with flashcards and a timed drill in each. > Show a live ATC radar for Toulouse with simulated traffic and the real LFBO weather. The second one is a single tool call: `emit_runbook_surface` stamps your content through a pre-authored composition, so the agent supplies content and makes zero layout decisions. The third pulls live METAR through a declared data proxy. ## One payload, many surfaces Every atom declares where it works, where it degrades, and where it genuinely cannot go β and those declarations are **enforced**, not documentation: | | | |---|---| | `works_on` | renders fully | | `degraded_on` | renders with something lost β an animation frozen, an ordered list instead of a stepper | | `incompatible_on` | cannot do what it is designed to do there, and says so instead of pretending | A `quiz_set` you cannot answer is not a degraded quiz, it is not a quiz. The catalogue refuses rather than shipping something that looks right and isn't. Surfaces: **web Β· MCP Apps Β· Google Apps Script Β· Google Meet Β· Google Chat Β· PDF Β· email** ## Interactive UI, not screenshots Implements **MCP Apps (SEP-1865)** β `ui://` resources over the standard `ui/*` JSON-RPC bridge. Verified rendering full-screen in **both Claude and ChatGPT** from an identical payload, which is the point: the vocabulary is the product, the host is a detail. ## 15 tools **Compose** β `list_catalogs`, `get_catalog`, `required_catalogs`, `distill_document` **Render** β `render_surface`, `render_ping`, `preview_url`, `make_surface_url`, `build_multi_page_surface` **Runbooks** β `emit_runbook_surface`, `emit_training_runbook` (pre-authored compositions; you supply content only) **Ship** β `emit_deployment`, `publish_url`, `unpublish_url` **Setup** β `identify_model` (capability-matched guidance; optional, never a precondition) ## Without MCP at all The vocabulary stands alone. No client, no connector, no account: ```bash curl -X POST https://a2uicatalog.ai/api/render \ -H 'Content-Type: application/json' \ -d '{"blocks":[{"type":"stat_card","value":"1,234","label":"Daily users"}]}' npx -p @a2uicatalog/mcp a2ui render page.json --surface email ``` `OpenAPI` Β· `spec.json` Β· `llms.txt` Β· ARD catalog β all public, all unauthenticated. ## Free No paid tier, because there is nothing to upgrade to. MIT licensed, renderers in the public repo β anything you hit a limit on here, you can run yourself. Full limits: https://a2uicatalog.ai/pricing.md --- [Docs](https://a2uicatalog.ai/llms.txt) Β· [OpenAPI](https://a2uicatalog.ai/openapi.json) Β· [Source](https://github.com/a2uicatalog/a2ui) Β· MIT
Not monetized yet
Turn a2uicatalogβs tool calls into revenue: one disclosed sponsored slot, 70% revenue share, fail-open by design.
Install a2uicatalog
For anyone using a2uicatalog β no Lulu account neededclaude mcp add --transport http a2uicatalog https://a2uicatalog--a2uicatalog.run.tools
Real-time weather for any city, built on the lulu-ads widget gallery. First-party, free forever.
View server βFAQ
Run: claude mcp add --transport http a2uicatalog https://a2uicatalog--a2uicatalog.run.tools
Yes β itβs a remote MCP server, so no local install is needed.
ChatGPT: Settings β Connectors β Advanced β Developer mode β Add connector, then paste https://a2uicatalog--a2uicatalog.run.tools.
Claude.ai: Settings β Connectors β Add custom connector, then paste the same URL.
Unrated out of 100, computed from cross-registry traction signals (installs, stars, registry presence) β never influenced by sponsorship.
Similar servers
Works well together