llms.txt@public/surfaces · diff
git:20260731.a19618d to git:20261002.f1294dd
2 added, 0 removed. Audit A to A.
# A2UI Atomic Catalog — Surfaces
> Scoped context: which rendering surfaces exist and how they differ. For the full
> site overview see https://a2uicatalog.ai/llms.txt; for integration mechanics see
> https://a2uicatalog.ai/developers/llms.txt.
## The surfaces
One payload, several renderers. Per-surface support is declared PER ATOM in
`spec.json` (`surfaces.works_on`) — an atom that cannot render somewhere says so
rather than degrading silently. Always check that field before composing for a
specific surface.
- `web` — the reference renderer; the widest support.
- `mcp-apps` — renders inline inside MCP Apps hosts (e.g. claude.ai) via `render_surface`.
- `google-meet-stage` — Meet add-on stage.
- `google-apps-script-web` — self-hosted Apps Script web app; deploy your own for
unmetered rendering.
- `google-apps-script-side-panel` — Apps Script side panel.
- `google-chat` — Chat cards; visuals arrive as server-rendered images (Chat's own
widget set cannot express custom charts or layout).
+ - `claude-code` — native terminal panes inside Claude Code via the `claude-code-surface/`
+ plugin (a mod); a subset of atoms, others show a placeholder.
- `email` / `pdf` — static print channels; no scripting, no interactivity.
## Choosing one
Ask what the host can actually display. MCP Apps hosts render inline. Everything
else takes a link (`preview_url`, or `make_surface_url` against your own renderer).
Static channels (`email`, `pdf`) need the image/print path, not interactive atoms.
## Reference
- Per-atom surface support: https://a2uicatalog.ai/spec.json
- Live playground: https://a2uicatalog.ai/surfaces/mcp-apps