Skip to content

Introduction

read as .md

ggui is an open protocol that lets AI agents render interactive UI on the fly. Your agent describes what it needs in natural language; ggui compiles a typed component and returns it as an MCP-Apps resource (ui://ggui/render/<sessionId>) that your host mounts. The UI reports back typed events the next time your agent calls ggui_consume.

You run the whole protocol yourself with ggui serve — no account, no cloud, no API key. A managed hosted endpoint that speaks the same wire is coming after the preview.

Quickstart — local in 5 minutes

How ggui works

Reading as an LLM?

Agent Builder — wire ggui into an MCP server

Section titled “Agent Builder — wire ggui into an MCP server”

Start with the Quickstart (5 min, local). Then read the MCP protocol reference, browse the Cookbook, or copy a worked example agent.

Connect Claude Desktop to a ggui serve you run yourself. Other MCP hosts use the same self-hosted endpoint with their own config shape.

ggui serve is the local deployment guide. Reference deploys covers Docker, Fly.io, and Render. The Self-hosted Registry is the artifact layer for private gadgets and blueprints.

Agentic App Builder — make your SaaS agent-drivable

Section titled “Agentic App Builder — make your SaaS agent-drivable”

If you ship a SaaS or webapp and want agents to drive it without rewriting the frontend, see Agentic App Builders.

Every page is also raw markdown at the same slug. Start with /llms.txt (index, per the llms.txt convention), /llms-full.txt (single-file dump of the whole site), or /llms-small.txt (compact variant). See the LLM-agent track for the full machine-readable surface.

A typical exchange is four moments — handshake → render → interact → consume. See How ggui works for the full walk-through with code.

A few terms recur across the docs:

  • GguiSession — one rendered UI, minted by ggui_render (render is the verb; the object it creates is a GguiSession). Each GguiSession carries a stable sessionId.
  • Contract — the typed agreement between agent and renderer for one GguiSession.
  • Tool — an agent-side action (ggui_render, ggui_consume, …) — the MCP surface.
  • Gadget — a renderer-side capability (Leaflet map, Stripe Checkout, …) the LLM can compose with.
  • Blueprint — a cached recipe — a UI promoted from one-shot to “use this exact screen next time.”

Glossary for everything else.