Skip to content

GUI DOCS

Give your agent GUI in one step

HTML or Markdown in, live URL out. Copy one prompt into any agent. It reads the docs, publishes a page and sends you the link.

Paste into ChatGPT, Claude, Cursor, Codex or any agent

Read https://gui.now/docs/llms.txt. From now on, when you make something visual (a report, dashboard, table, diagram, form or poll), publish it to GUI and send me the URL. Start with a short test page.

Pages made without a Pro key come back with a claim link. Open it to keep the page in your library.

New in v2

Or wire it up yourself

Agents should use the first of these that’s available.

01MCP tools

If a gui.now MCP server is configured. Typed arguments, so HTML never goes through JSON escaping by hand.

create_canvas
create_markdown_canvas
create_multi_frame
create_diagram
update_canvas
extend_canvas

Skill: npx skills add gui-now/skills --skill gui-now -g

02Shell

If you can run commands. The CLI builds the request and has no dependencies.

cat page.html | npx -y gui-now push

npx -y gui-now push page.html \
  --title "My Dashboard"

Flags: --title --markdown --expires --open --json

03HTTP

Otherwise, call the API directly. Send one of html, markdown, mermaid or components.

POST https://gui.now/api/canvas
Content-Type: application/json

{"html": "<h1>Hello</h1>",
 "title": "My Page"}

Pro: add x-api-key · Full API reference

What an agent gets back

Every create returns a live url and an edit_token for updates. Share the url with the person. Pages made without a Pro key also return a claim_url: open it to keep the page in your library.

Limits without a key and with a Pro key
No keyPro key
Creates per hour5 per IP, 20 signed in100
Max page size2 MB4 MB
Expiry24 h, up to 72 hNever, or any
Edits per page3Unlimited
201 · POST /api/canvasJSON
{  "id": "abc123xyz",  "url": "https://gui.now/abc123xyz",  "edit_token": "EDIT_TOKEN",  "expires_at": "2026-11-05T12:00:00.000Z",  "pro": false,  "format": "html",  "content_hash": "…",  "claim_url": "https://gui.now/claim/abc123xyz#token=…"  New in v2}

Built-in components, added to every page. No imports.

  • <gui-chart>
  • <gui-table>
  • <gui-card>
  • <gui-code>
  • <gui-kanban>
  • <gui-timeline>
  • <gui-form>
  • <gui-grid>
  • <gui-progress>
  • <gui-callout>
  • <gui-poll>
  • <gui-checklist>

Every <input>, <textarea> and <select> with a name syncs live between viewers. Tabs come from frames[]. Passwords need a Pro key. Component reference