Docs & getting started
Make the website you built with AI fully alive - upload it, go live free, connect your AI, and manage everything in plain language. Here's the A→Z.
What is Yetty
You built a website with your own AI - static HTML, CSS and assets. Yetty turns it into a real, managed website: hosting with SSL, content editing, lead capture, SEO, analytics, versioned updates and your custom domain - your design preserved pixel-perfect. You run all of it in plain language, from your AI or a simple dashboard.
Quick start
Create an account
Free - no credit card, no password. Enter your email and we send a one-click sign-in link.
Upload your site
Drag in a zip (index.html at the top). Converting is free up to 50 pages.
Go live - free
Publish to a free Yetty address with SSL. Connect your custom domain on the Site plan.
You can do all three from the dashboard, or entirely from your AI over MCP - next section.
Connect your AI (MCP)
The whole platform is one control plane, reachable over the Model Context Protocol. Connect the agentic AI you already use - Claude Code, Cursor, Windsurf, Codex, plus Claude and ChatGPT.
There are two ways to connect - both give your AI the exact same tools:
- OAuth - no key. In Claude.ai, Claude Desktop or ChatGPT, add yetty as a connector and click Connect: you sign in to Yetty and approve access. Nothing to paste. Jump to connectors →
- API key. In terminals and editors (Claude Code, Cursor, Windsurf, Codex), paste a key once - steps below.
First time? Connect your AI gives you copy-paste setup for your exact app - pick Claude, Cursor, ChatGPT and more, and it hands your AI the instructions to link yetty.
No account yet? Send first, approve by email
You don’t need to sign up before your AI sends your site. It can park the files with Yetty right away - nothing is processed - and then email you a one-click approval link. You approve, your account is created, the site builds, and your AI gets a key: all without leaving the chat.
yetty_batch_start→ returns apark_ref(pk_…).yetty_batch_fileonce per file (batch_ref= thepk_…, pluspathandcontent, orcontent_base64for images/fonts) - each returnsreceived_bytes+sha256to verify.yetty_batch_end- closes the parked batch (still nothing processed).yetty_signup {email, park_ref}- emails you, the owner, an approval link.- You click it → your free account is created and the site starts building.
yetty_claim_status {park_ref}- once approved, hands your AI an API key (shown once) and the live URL, to reconnect with the full toolset.
Parked files are size-capped and auto-deleted after 48 hours if never approved, so it costs nothing to try. Already have an account? Skip this and connect with your key or OAuth below.
Session expired or connection broken? Your AI signs you back in without any menus: it calls yetty_login {email} (works unauthenticated - even over plain curl if the MCP transport itself is down), you click one emailed link, and yetty_login_status hands it a fresh key with the exact reconnect command.
1 · Get your API key
In the dashboard, open API keys → Create API key. Copy it (shown once) and paste it where the setup says yk_your_key. (Claude.ai / Claude Desktop / ChatGPT users skip this - you connect with OAuth, no key.)
2 · Add yetty to your AI
Just a URL + your key - nothing to install, no files.
Claude Code:
claude mcp add --transport http yetty \ https://app.yetty.ai/mcp \ --header "Authorization: Bearer yk_your_key"
Cursor · Windsurf · any MCP client - add an HTTP server:
{
"mcpServers": {
"yetty": {
"url": "https://app.yetty.ai/mcp",
"headers": { "Authorization": "Bearer yk_your_key" }
}
}
}
Claude.ai, Claude Desktop & ChatGPT don’t use a key - they connect with OAuth instead. See connectors below → (A local Python stdio server is available too, for pushing a site from the terminal.)
3 · Just ask
Once connected, talk to your site in plain English:
- “Upload my site and put it online.”
- “Add a blog post about our Thursday special - then publish it.”
- “Connect my domain example.com.”
- “How many visits this week? Which page is hottest?”
- “Roll back yesterday's change.”
- “Check my live site for any broken links before I publish.”
Pushing a site from your AI
sha256) and echoes back a regeneration_risk flag, so your AI catches this before you go live.Your AI has three ways to send the files - all transfer your exact bytes and end in the same build:
- File batch - recommended. No zip needed, and every file is checked:
yetty_batch_start→ oneyetty_batch_fileper file (each returnsreceived_bytes+sha256, so your AI can compare against its copy and resend just that one file if it differs) →yetty_batch_endto build. Keep the folder structure in eachpath(css/style.css); binary files go ascontent_base64. - Chunked zip. Best for chat clients where one big upload won’t fit in a single call:
yetty_upload_begin→yetty_upload_chunk(~24 KB pieces, sent in order) →yetty_create_sitewithzip_ref. - Single zip. When it fits in one call:
yetty_create_sitewithzip_base64(the actual site folder, zipped).
Then poll yetty_publish_status(upload_id) until the build is ready, and yetty_publish_site to go live. An upload larger than the free page cap comes back held - call yetty_start_transform to build it (it spends the estimated credits). Updating an already-live site creates a pending version that waits for your OK (see Updates & rollback).
All MCP tools
Most tools take your site’s opaque site token (from yetty_status) - never a numeric id. The send-a-site tools are the exception: they create the site.
| Tool | What it does |
|---|---|
| Send a site | |
yetty_create_site | Build a new managed site (or a new version of one) from your files - hosted byte-true, then given a CMS, leads, SEO, analytics and versioning. Takes zip_base64, or zip_ref (chunked), or the file batch. Runs the fidelity guard; small sites (≤ free page cap) build immediately and free. |
yetty_batch_start · yetty_batch_file · yetty_batch_end | Recommended. Send a site file-by-file, no zip. Each batch_file returns received_bytes + sha256 to verify; batch_end builds it (or applies it as a new version of an existing site). |
yetty_upload_begin · yetty_upload_chunk | Transfer a large zip in ~24 KB base64 pieces (exact bytes, no size limit), then call yetty_create_site with zip_ref. |
yetty_publish_status | Poll a build by upload_id - stage (held → queued → transforming → transformed), then the new site token + a preview URL. |
yetty_start_transform | Build a held upload (one larger than the free page cap); spends the estimated credits. (upload_id) |
| Publish & manage | |
yetty_status | Your account, plan, credits and sites - each with its site token, plus a per-site setup report (what's still missing: SEO, social image, domain, leads) so your AI can guide you. |
yetty_publish_site | Put a site live on its Yetty address (free). (site) |
yetty_site_versions | List/manage versions: publish=<n>, schedule={version,when}, or rollback_to=<n>. Updates stay pending until you publish. (site) |
yetty_reprocess_site | Re-run the conversion on a site’s stored files (no re-upload) → a new version to review; your content edits carry over, the live site is untouched until you confirm. (site) |
yetty_visual_check | Screenshots the live site and its stored preview at two viewports and pixel-diffs them → diff_pct. 0% = what’s served is exactly what’s stored - byte-true, made visible. (site) |
| Insights & health | |
yetty_site_analytics | Real traffic - total + last-N-days views, unique visitors, top pages. (site, days?) |
yetty_list_leads | Recent form leads for a site. (site) |
yetty_integrations | Lead/event destinations: add={kind:webhook|email,target}, remove=<id>, or list. (site) |
yetty_check_links | Deterministic health check - fetches the live site and flags internal links that 404. Run it before or after a publish. (site) |
yetty_publish_check | First-publish readiness checklist: SEO titles + descriptions on every page, social share image, favicon, a lead destination, your custom domain, and (optional) a broken-link scan. Returns pass/fail items. (site, check_links?) |
yetty_site_suggestions | Proactive review - a friendly, ranked list of standard things that would make the site look more complete (social image, thank-you page, meta descriptions, favicon, custom 404, image alt text). No credits. (site) |
| Organize your content (Live plan) | |
yetty_taxonomies | Create or list categories & tags for your posts and collections. (site) |
yetty_terms | Manage the terms inside a taxonomy - build the tree, then add, rename, move, merge, delete, or import a list. (site, taxonomy) |
yetty_assign_terms | Tag pages or collection items with terms. Staged like a draft - publish with yetty_publish_drafts. (site, object, terms) |
yetty_taxonomy_settings | Turn categories & tags on or off - a site-wide switch, per-collection exceptions, and bulk changes that always preview first. (site) |
yetty_taxonomy_suggestions | yetty found categories & tags already in your site - review its suggestions before turning them on. (site) |
yetty_permalinks | Your site’s address book: every collection item and term-page URL. Set a custom address and the old one 301-redirects automatically, so links and rankings survive. (site) |
Claude & ChatGPT connectors (OAuth)
No terminal, no key. In Claude.ai, Claude Desktop or ChatGPT, add yetty as a connector and manage your site right in chat - the same actions as the dashboard and the terminal.
- Open your AI’s Connectors (Claude: Settings → Connectors; ChatGPT: Settings → Connectors) and choose Add custom connector.
- Point it at
https://app.yetty.ai/mcp. - Click Connect - you’re sent to yetty to sign in and approve access (OAuth). Approve, and you’re linked.
Then just talk to your site in the chat - “publish my site”, “how many visits this week?”, “roll back yesterday’s change”. You can revoke access any time from your Yetty dashboard.
Manage your site
Everything below works from the dashboard and your AI:
A real editor
Your page’s real sections become editable cards with typed text, link and image fields. Edits save as a draft you preview, then publish - and every publish is a version you can roll back. The design is never touched (byte-true). More →
SEO
Per-page title & meta description with live character counters, plus friendly URLs.
Leads
Every form auto-captured to a lead inbox; email alerts + signed webhooks to Zapier, Make, your CRM or Google Sheets.
Analytics
Real visits, unique visitors, top pages and trends - or just ask your AI “how many visits?”.
Collections
Blog posts, events and projects are recognised as collections and edited as per-item cards - add and remove.
Media & AI images
Swap images, or generate on-brand visuals with AI (Gemini) - choose the size (1K–4K) and aspect ratio, and add reference images so it matches your brand. Runs on credits.
Editing your site
Yetty reads the site you built and turns each page into the real parts you’d recognise - a hero, a features row, a pricing table, a contact form - each named in plain language. You edit those parts directly: no theme to learn, no raw HTML to touch.
- Sections are your page’s real parts, each named in your own words, so you always know what you’re changing.
- Lists are cards. Repeating things - blog posts, team members, projects - edit as per-item cards you can add and remove.
- Typed fields. A link field is a link, an image field swaps the image - no markup, no broken layout.
- Edits splice back exactly. When you publish, your change slots into your page byte-for-byte - the design is never re-rendered or altered.
- Re-uploads keep your edits. Ship new code and your saved edits carry over wherever the field still exists; where your code changed the text, the new code wins. Nothing you wrote is quietly lost.
Draft, preview, publish - nothing goes live by accident
Editing never touches your live site on its own. Every change moves through the same safe path:
- Save a draft. When you edit a field and save, it’s stored as a draft. Your live site is unchanged - visitors still see the current version.
- Preview the pending changes. Open the preview to see your site exactly as it’ll look with the edits applied, before anyone else does. Keep editing and previewing until it’s right.
- Publish. When you’re happy, Publish makes the draft live - and records it as a version, so you always have a restore point.
- Roll back any time. Changed your mind after it’s live? Roll back to any earlier version in one click. Nothing is ever lost.
yetty_site_versions(site) lists them, and rollback_to=<n> restores an earlier one. See Updates & rollback.Integrations & webhooks
Leads are always saved to your inbox. To also deliver them instantly, add a destination in Dashboard → Integrations (or ask your AI): an email, or a webhook that points at Zapier, Make, your CRM, or a Google Sheets Apps Script.
Each event is POSTed as JSON and signed:
POST your-webhook-url X-Yetty-Signature: sha256=HMAC-SHA256(secret, body) { "event": "lead.created", "site_id": 212, "form": "contact", "data": { "name": "Ada", "email": "[email protected]", "message": "…" }, "created_at": "2026-08-06T18:20:00Z" }
yetty_integrations(site="<token>", add={kind:"webhook", target:"https://hooks.zapier.com/…"}). Verify the signature with the secret returned when you add it.Updates & rollback
Changed your site? Re-upload it (or ask your AI to). Yetty saves it as a new version and shows exactly what changed - pages, text, sections, even a hover colour. An update to a live site waits for your OK (the live site is untouched) - review the change summary, then Publish now or Schedule it for later. Don't like it once live? Roll back to any version in one click. Nothing is ever lost.
yetty_submit_site(zip_path, site="<token>"); then yetty_site_versions(site, publish=<n>) or schedule={version:<n>, when:"2026-08-09 09:00"}, or rollback_to=<n>.Your custom domain
Start free on a Yetty address. When you're ready, use your custom domain with the Site plan ($13/site - we don't sell domains; you point your DNS and we serve it with SSL).
- Dashboard → Hosting & Domains → Add domain (or ask your AI).
- Add the shown DNS records at your registrar (a TXT to verify, an A record, a www CNAME).
- Verify - SSL is issued automatically.
Pricing
Converting, going live, and MCP control from any AI are free. $13/site/month adds your custom domain (no badge), full management and monthly AI credits. Need more AI? Credit packs are yours for a year and never reset. Full pricing →
FAQ
Do I have to rebuild my site?
No - Yetty preserves the site you already built, exactly. We add the platform around it.
What if an update breaks something?
It can't sneak up on you: every update is a version with a plain-language changeset, and rollback is one click.
Can my AI really do everything?
Yes - publish, edit, read leads, check traffic, connect a domain and roll back are all available over MCP, and from the dashboard.