yetty
Build, edit and run real hosted websites from your AI - content, SEO, menus, store, rollback.
Sollte ich dies verwenden
Qualität und Sicherheit
Befunde (2)
- HIGH
- MEDIUMin yetty_login_status
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"yetty": {
"url": "https://mcp.yetty.ai/mcp"
}
}
}Remote-Endpunkte
https://mcp.yetty.ai/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (10)
🟢yetty_status
Connection + authentication status. Call this FIRST. Unauthenticated sessions can still park a website (batch tools) and start email sign-up — the response tells you exactly how.
Eingabe-Schema
{
"type": "object",
"properties": {}
}🟢yetty_authoring_guide
READ THIS BEFORE WRITING OR SENDING ANY HTML (no account needed, free, instant, no arguments). Returns yetty's exact structure rules — repeated items sharing one class, semantic class names for field labels, headings before sections, no JS-rendered content — that decide whether the site converts into a clean editable CMS with named fields and add/remove collections, or a wall of generic "Text" fields.
Eingabe-Schema
{
"type": "object",
"properties": {}
}🟢yetty_pull_template(template)
Pull a ready-made Yetty template file WITH its usage contract (no account needed, free, instant). Four boilerplates, one per store surface: template:"checkout-skeleton" (cart / checkout / thank-you markup with every data-yetty-component and data-yetty-slot mark), "account-skeleton" (the buyer's /account page in the site's own design), "order-status-skeleton" (the /order/{token} confirmation), "pay-skeleton" (the /pay/{token} frame - the payment element stays hosted and non-removable). Every file carries a commented CONDITIONAL REGIONS section showing the component logic grammar (data-yetty-when / data-yetty-each / data-yetty-state; full grammar in yetty_authoring_guide's logic_and_conditional_components chapter). Restyle freely to match the site; NEVER remove or rename data-yetty-* marks; write NO cart/checkout/account JavaScript of your own (Yetty provides the behavior); send the styled file back with the site files. (Connected Live-plan stores can additionally pull 24 gallery-<surface>-<layout> LAYOUT skeletons - different page structures over the same contract, auto-adjusted to the site's own colors and fonts.)
Eingabe-Schema
{
"type": "object",
"properties": {
"template": {
"type": "string",
"description": "template key: checkout-skeleton (default) | account-skeleton | order-status-skeleton | pay-skeleton"
}
}
}🟡yetty_batch_start
No account needed: start a PARKED file batch — send the site now, authenticate after. Returns park_ref (use it as batch_ref). Files are stored safely but NOT processed until the owner approves by email. EXAMPLE: yetty_batch_start {} -> {park_ref:"pk_..."} -> yetty_batch_file {batch_ref:"pk_...", path:"index.html", content:"..."} per file -> yetty_batch_end {batch_ref:"pk_..."} -> yetty_signup {email:"[email protected]", park_ref:"pk_..."} -> owner clicks the email -> yetty_claim_status {park_ref:"pk_..."} gives you an API key + the build status.
Eingabe-Schema
{
"type": "object",
"properties": {}
}🟡yetty_batch_file(batch_ref, path, content, content_base64)
Add ONE file to the parked batch. Args: batch_ref (the pk_... park_ref); path (relative, folders allowed); content (text) OR content_base64 (binary). Returns {received_bytes, sha256} — verify against your local copy; mismatch = resend THIS file. Send EXACT bytes, never retype.
Eingabe-Schema
{
"type": "object",
"properties": {
"batch_ref": {
"type": "string"
},
"path": {
"type": "string"
},
"content": {
"type": "string"
},
"content_base64": {
"type": "string"
}
},
"required": [
"batch_ref",
"path"
]
}⚪yetty_batch_end(batch_ref)
Close the parked batch. Nothing is processed yet — next call yetty_signup {email, park_ref} so the owner can approve by email.
Eingabe-Schema
{
"type": "object",
"properties": {
"batch_ref": {
"type": "string"
}
},
"required": [
"batch_ref"
]
}🟡yetty_signup(email, park_ref)
Link a parked upload to the owner's email: sends them an approval email and returns a short user_code. The site is processed ONLY after the owner opens the email and types that code on the approval page. Args: email (the owner's), park_ref. SHOW THE OWNER THE CODE, then poll yetty_claim_status every ~30s.
Eingabe-Schema
{
"type": "object",
"properties": {
"email": {
"type": "string"
},
"park_ref": {
"type": "string"
}
},
"required": [
"email",
"park_ref"
]
}🟢yetty_claim_status(park_ref)
Check a parked upload. States: parked (send yetty_signup) -> awaiting-approval (owner must open the email and type the user_code) -> approved (returns your api_key ONCE + waiting_url — reconnect with Authorization: Bearer <api_key> for the full toolset).
Eingabe-Schema
{
"type": "object",
"properties": {
"park_ref": {
"type": "string"
}
},
"required": [
"park_ref"
]
}🟢yetty_login(email)
Sign the OWNER in by email — no dashboard, no key copying. Works for existing accounts AND (when signups are open) new ones. FLOW: yetty_login {email:"[email protected]"} -> {login_ref, user_code} -> SHOW the owner the user_code; they open the emailed link and type it -> poll yetty_login_status {login_ref} every ~20s -> it returns an api_key ONCE + the exact reconnect command. Use this whenever you are unauthenticated or your token expired.
Eingabe-Schema
{
"type": "object",
"properties": {
"email": {
"type": "string"
}
},
"required": [
"email"
]
}🔴yetty_login_status(login_ref)
Check an email sign-in: pending (owner has not typed the code yet) -> approved (returns api_key ONCE + reconnect instructions). EXAMPLE reconnect for Claude Code: claude mcp remove yetty; claude mcp add --transport http yetty https://mcp.yetty.ai/ --header "Authorization: Bearer <api_key>" -s user
Eingabe-Schema
{
"type": "object",
"properties": {
"login_ref": {
"type": "string"
}
},
"required": [
"login_ref"
]
}Community
Nachweis