# A2UI Atomic Catalog > Open-source, typed UI vocabulary (474 atoms) an AI agent uses to compose real interfaces — web, Google Meet stages, Apps Script web apps, Google Chat cards, and MCP Apps — from one JSON schema payload, instead of generating HTML. ## Integrate - [MCP server](https://a2uicatalog.ai/mcp): Live JSON-RPC endpoint, no auth/signup required. GET with `Accept: application/json` returns a machine-readable server descriptor listing every tool. - [NLWeb search](https://a2uicatalog.ai/ask): Ask a plain-English question about the catalog (GET `?query=` or POST JSON) and get ranked, typed atom matches — no need to scrape HTML. `mode=summarize` adds a one-paragraph answer; `mode=generate` composes a real UI from the match. Supports SSE streaming (`Accept: text/event-stream`). - [OpenAPI specification](https://a2uicatalog.ai/openapi.json): The full API surface — MCP endpoint, catalog documents, compose, data-proxy and NLWeb routes. - [Auth & rate limits](https://a2uicatalog.ai/.well-known/agent-auth.md): No API key or signup — the actual per-tool call limits. - [Machine-readable catalog](https://a2uicatalog.ai/spec.json): The full atom vocabulary as structured JSON — every field contract, generated from the schema. - [Strict per-atom JSON Schema](https://a2uicatalog.ai/catalogue/atoms-json-schema.json): For constrained decoding, so a model cannot emit an invalid atom. - [Agent discovery document](https://a2uicatalog.ai/.well-known/ai-catalog.json): Per-atom capability/description index (also referenced from robots.txt's `Agentmap:` directive). - [MCP Apps playground](https://a2uicatalog.ai/surfaces/mcp-apps): Renders atoms live inside MCP Apps-capable hosts (e.g. claude.ai); paste a payload or open a `#p=` link. - [Self-host the renderer](https://a2uicatalog.ai/renderer): Deploy your own Apps Script renderer in 4 commands — own the URL, no shared-demo rate limit. ## When to use this Use the A2UI catalog when you need to SHOW something to a user rather than describe it — a chart, a status board, a step-by-step procedure, a comparison table, a dashboard. Call `list_catalogs` then `get_catalog` to read real field contracts before composing; never guess a field name. Use `render_surface` on MCP Apps-capable hosts to render inline, or `preview_url` elsewhere to get a shareable link. Do not use it for plain prose answers, for data retrieval (it renders data, it does not fetch it beyond declared sources), or where the host cannot display HTML. ## Source - [GitHub repository](https://github.com/a2uicatalog/a2ui): Source, license, and the full atom schema. - [Claude quickstart](https://raw.githubusercontent.com/a2uicatalog/a2ui/main/docs/quickstart-claude.md): Connect the MCP server, render a first atom, deploy your own renderer. - [Gemini Enterprise quickstart](https://raw.githubusercontent.com/a2uicatalog/a2ui/main/docs/quickstart-gemini-enterprise.md): BYO-MCP setup for Gemini Enterprise agents.