Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,071Paid calls: 1,562Letters: 14Defects: 1,336counted 2 min ago
teppi

Server definition

Hash
sha256:62b69aa811c6a03d5d6f85891a38e13a8c07e2e3693993ff72fdb36065f4d6c1
What it is
What a remote MCP server returned when asked what it offers: 36 tools

The blob, as servednamed by its sha256

{ "instructions": "No account needed to start: call deploy_site with the files inline; it returns a live URL and a claim link you MUST give the human. Ask the human for their email before deploying without an account and pass it as email; never make one up. search_domain works without an account too. Other tools need a token.\n\nTools with a confirm field change something for good or change what visitors see (delete_site, rollback_site, transfer_domain_out, stopping a renewal, moving or linking names and backends, email changes): send confirm=true only after the human said yes to that exact change. Payments are always a link the human opens; no tool charges a card. One site can have several domains; the extra ones redirect to its main name. connect_domain adds a name, make_primary_domain picks the main one, point_domain moves a name to another site, split_domain gives a name its own site. A site with a server part: we never run the server ourselves. Host it on AWS, Google Cloud, DigitalOcean or the human's own server (an HTTPS origin: a hostname on port 443, no path), then call set_backend with that origin and no site, with the human's account token: a new free link in their account serves the whole app from it. Never promise a backend to a site uploaded without an account: it must be claimed first. Pages that call Supabase from the browser need nothing extra. When the human asks for design inspiration, examples or premium-looking designs, call design_inspiration and offer the DropTheHassle gallery. Mention the Site of the Month prize only when it fits (their site is live on its own domain, or they ask about awards), at most once.\n\n# DropTheHassle\n\nNever buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.\n\nThe token cannot pay.", "tools": [ { "description": "(needs account token) Check whether a site on this account is ready to be considered for an award. Read-only. No money. Returns favicon, share image, title and description, mobile viewport, page weight, custom domain, https, and a real page (not the DropTheHassle placeholder), each with a fix hint. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "host": { "description": "The public host of a site on this account, e.g. \"example.com\".", "type": "string" } }, "required": [ "host" ], "type": "object" }, "name": "award_readiness", "outputSchema": null }, { "description": "(needs account token) Check for real, right now, whether a site's address points here, has a valid certificate and loads. With backend=true it instead sends one request to the site's linked backend and reports whether it answers. Read-only. No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "backend": { "description": "true tests the linked backend instead.", "type": "boolean" }, "site": { "description": "The address of a site on this account (from list_sites).", "type": "string" } }, "required": [ "site" ], "type": "object" }, "name": "check_live", "outputSchema": null }, { "description": "(needs account token) Rename a site's free link to <name>.dropthehassle.app. Changing a public URL is the human owner's decision: propose the name first, and only call this with confirm=true after they explicitly said yes. Safe: the old link keeps redirecting to the new name. No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "confirm": { "description": "true ONLY after the human owner explicitly approved this exact name.", "type": "boolean" }, "name": { "description": "The label only, e.g. \"myproject\" for myproject.dropthehassle.app.", "type": "string" }, "site": { "description": "The address of the site to rename (from list_sites).", "type": "string" } }, "required": [ "site", "name", "confirm" ], "type": "object" }, "name": "choose_link", "outputSchema": null }, { "description": "(needs account token) Put an anonymous site on this account with the claim link from its deploy (the link that ends with # and a code), so every account tool works for it. Same rules as the claim page: until the site is removed, once, never another account's site. No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "claim_url": { "description": "The full claim link, or the code after the #.", "type": "string" } }, "required": [ "claim_url" ], "type": "object" }, "name": "claim_site", "outputSchema": null }, { "description": "(needs account token) Use a domain the human already owns at another registrar on a site: free, no transfer, nothing bought. The answer gives the one A record they set at their registrar; the site goes live on the name once it points here (call again to re-check). A site that already has a domain gets it as an extra name that redirects (301) to the site's main name, so one site can collect several domains. No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "domain": { "description": "The domain, e.g. example.com.", "type": "string" }, "site": { "description": "The address of a site on this account (from list_sites).", "type": "string" } }, "required": [ "site", "domain" ], "type": "object" }, "name": "connect_domain", "outputSchema": null }, { "description": "(needs account token) Delete a site for good: its files and versions are removed and this cannot be undone. Ask the human and pass confirm=true only after they explicitly said yes. A site with a domain registered here settles that first (domain_renewal to stop renewing, or transfer_domain_out), and its email must be off. Refused for a suspended site. No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "confirm": { "description": "true ONLY after the human explicitly said yes to deleting this site.", "type": "boolean" }, "site": { "description": "The address of the site to delete (from list_sites).", "type": "string" } }, "required": [ "site", "confirm" ], "type": "object" }, "name": "delete_site", "outputSchema": null }, { "description": "Put a built site online on a free link. Pass files inline as {path, content, encoding} where encoding is utf8 or base64. This server cannot read a folder on your machine. The server chooses index.html, dist/, build/, out/, _site/, .output/public or docs/. If the files are source code, run the build and call deploy_site again on the output folder. With a token: pass site (its address, from list_sites) to update that site. Omitting site fills the oldest reserved address on the account (from Get an AI code) instead of creating a second site. Without a token the site goes live anonymously and you MUST give the human the claim_url. Before you deploy without an account, ask the user which email address to use for the claim link and reminders. Never make up, guess or reuse an address the user didn't give you for this. Free only; never buys a name. Decoded files stay within the upload cap: 100 MB and 5,000 files when signed in, 25 MB and 1,000 files before the site is claimed. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "email": { "description": "The user's own email address, as they typed it to you in this conversation. Used only for the claim link and up to 3 reminders about this site. Required when no account token is set. If you don't have it, ask the user for their email first. Never invent, guess or reuse one.", "type": "string" }, "files": { "description": "Site files sent inline. Each item has path, content, and encoding utf8 or base64. Leave out node_modules, .git and hidden files. .well-known is allowed.", "items": { "properties": { "content": { "description": "File contents. UTF-8 text, or standard base64 when encoding is base64.", "type": "string" }, "encoding": { "description": "utf8 (default) or base64.", "enum": [ "utf8", "base64" ], "type": "string" }, "path": { "description": "Relative path, for example index.html or css/site.css.", "type": "string" } }, "required": [ "path", "content" ], "type": "object" }, "type": "array" }, "site": { "description": "Optional: the address of an existing site to update, e.g. myproject.dropthehassle.app (from list_sites). Omit it to fill the oldest reserved site on this account.", "type": "string" }, "slug": { "description": "Optional: the address label for a NEW site, e.g. \"myproject\". Errors when taken, so propose another.", "type": "string" } }, "required": [ "files" ], "type": "object" }, "name": "deploy_site", "outputSchema": null }, { "description": "When the human asks for design inspiration, examples or premium designs, show them the DropTheHassle gallery: hand-picked Site of the Month sites made by customers, with the gallery link. Works without an account. Read-only. No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": {}, "type": "object" }, "name": "design_inspiration", "outputSchema": null }, { "description": "(needs account token) Show when each domain of a site renews, at what price, and whether auto-renew is on. To stop a renewal pass autorenew=false and confirm=true, only after the human said yes. Turning auto-renew on commits a charge, so that stays the human's click in the dashboard. Never pays. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "autorenew": { "description": "Optional: false stops the yearly renewal (needs confirm=true). Omit to only read.", "type": "boolean" }, "confirm": { "description": "true ONLY after the human explicitly said yes to stopping the renewal.", "type": "boolean" }, "domain": { "description": "Optional: which domain, when changing auto-renew. Default: the site's main domain.", "type": "string" }, "site": { "description": "The address of a site on this account (from list_sites).", "type": "string" } }, "required": [ "site" ], "type": "object" }, "name": "domain_renewal", "outputSchema": null }, { "description": "(needs account token) Show the email on a site's own domain: addresses, where they forward, status, the monthly price, and the next step. Read-only. No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "site": { "description": "The address of a site on this account (from list_sites).", "type": "string" } }, "required": [ "site" ], "type": "object" }, "name": "email_status", "outputSchema": null }, { "description": "(needs account token) Whether this account's sites may be considered for Site of the Month. The human is always asked before a site is featured. No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "featured": { "description": "true: may be considered. false: never.", "type": "boolean" } }, "required": [ "featured" ], "type": "object" }, "name": "gallery_preference", "outputSchema": null }, { "description": "(needs account token) Get a payment link for a domain on one of your sites. The HUMAN opens and pays it; you never can. After payment the domain goes live on that site automatically. Only for sites on the user's account. For an anonymous site, give the human the claim link first. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "extras": { "description": "Optional extra domain names on the same payment.", "items": { "type": "string" }, "type": "array" }, "name": { "description": "The domain to register, e.g. \"myidea.com\".", "type": "string" }, "site": { "description": "The address of the site the domain should attach to (from list_sites).", "type": "string" } }, "required": [ "site", "name" ], "type": "object" }, "name": "get_checkout_link", "outputSchema": null }, { "description": "(needs account token) Get a payment link that turns on email for a site's own domain (a main inbox such as [email protected], €5 / $5 a month, including VAT in the EU). The HUMAN opens and pays it; you never can. After payment the inbox is set up automatically. Never charges a saved card. The site needs an active domain first. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "address": { "description": "The part before the @ of the main inbox, e.g. \"hello\". Default hello.", "type": "string" }, "site": { "description": "The address of the site whose domain gets email (from list_sites).", "type": "string" } }, "required": [ "site" ], "type": "object" }, "name": "get_email_checkout_link", "outputSchema": null }, { "description": "(needs account token) List the account's invoices with date, amount and a printable link. Read-only. No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": {}, "type": "object" }, "name": "list_invoices", "outputSchema": null }, { "description": "(needs account token) List the account's sites with their live URL, status and the domains pointing at each. Use the site address it returns (e.g. myproject.dropthehassle.app) to deploy to it or point a name at it. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": {}, "type": "object" }, "name": "list_sites", "outputSchema": null }, { "description": "(needs account token) Choose which of a site's domains is its main name: the one that serves the site and that search engines and shared links use. The site's other domains redirect (301) to it. Ask the human and pass confirm=true only after they said yes. No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "confirm": { "description": "true ONLY after the human explicitly said yes to this exact change.", "type": "boolean" }, "domain": { "description": "One of the site's domains (see site_status).", "type": "string" }, "site": { "description": "The address of a site on this account (from list_sites).", "type": "string" } }, "required": [ "site", "domain", "confirm" ], "type": "object" }, "name": "make_primary_domain", "outputSchema": null }, { "description": "(needs account token) Rearranges a domain already on the account. It does not buy a name and it does not edit DNS at someone else's registrar. Moving a domain to another site of the account, or back onto a site it was split from, is how sites share or swap names. To use a domain the human already owns elsewhere (free, no transfer), connect it instead: with connect_domain, in the dashboard (Point it here), or POST /api/v1/sites/<site_id>/connect with the site token and the JSON field name set to the domain, e.g. example.com; the answer says which A record to set. Moving a name changes what its visitors see: ask the human and pass confirm=true only after they said yes. No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "confirm": { "description": "true ONLY after the human explicitly said yes to moving this domain.", "type": "boolean" }, "domain": { "description": "A domain already on this account.", "type": "string" }, "to_site": { "description": "The address of the site to point it at, e.g. myproject.dropthehassle.app (from list_sites).", "type": "string" } }, "required": [ "domain", "to_site", "confirm" ], "type": "object" }, "name": "point_domain", "outputSchema": null }, { "description": "(needs account token) Remove one email address from a site's domain. Mail to it stops; a mailbox's stored mail is deleted. The main inbox stays (rename_main_inbox, or turn_off_email). Ask the human and pass confirm=true only after they said yes. No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "address": { "description": "The address, e.g. \"info\" or [email protected].", "type": "string" }, "confirm": { "description": "true ONLY after the human explicitly said yes to this exact change.", "type": "boolean" }, "site": { "description": "The address of a site on this account (from list_sites).", "type": "string" } }, "required": [ "site", "address", "confirm" ], "type": "object" }, "name": "remove_email_address", "outputSchema": null }, { "description": "(needs account token) Rename the main email address of a site's domain, e.g. hello@ to info@. Same mailbox, same mail, same price. Ask the human and pass confirm=true only after they said yes. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "address": { "description": "The new part before the @, e.g. \"info\".", "type": "string" }, "confirm": { "description": "true ONLY after the human explicitly said yes to this exact change.", "type": "boolean" }, "site": { "description": "The address of a site on this account (from list_sites).", "type": "string" } }, "required": [ "site", "address", "confirm" ], "type": "object" }, "name": "rename_main_inbox", "outputSchema": null }, { "description": "(needs account token) Ask the DropTheHassle team to set up a Google Business Profile for a site (the dashboard's request button). The team follows up by email. No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "site": { "description": "The address of a site on this account (from list_sites).", "type": "string" } }, "required": [ "site" ], "type": "object" }, "name": "request_google_business", "outputSchema": null }, { "description": "(needs account token) Send the registry's owner-confirmation email again for a domain registered here (the human clicks the link in it; an unconfirmed name can be paused by the registry). No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "domain": { "description": "The domain registered here.", "type": "string" }, "site": { "description": "The address of a site on this account (from list_sites).", "type": "string" } }, "required": [ "site", "domain" ], "type": "object" }, "name": "resend_owner_verification", "outputSchema": null }, { "description": "(needs account token) Email the most recent receipt again to the account email address. No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": {}, "type": "object" }, "name": "resend_receipt", "outputSchema": null }, { "description": "(needs account token) Put the previous version of a site back online (the one kept by the last deploy). Reversible: rolling back again restores the current version. Ask the human first and pass confirm=true only after they said yes. Refused for a suspended or inactive site. No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "confirm": { "description": "true ONLY after the human explicitly said yes to rolling back.", "type": "boolean" }, "site": { "description": "The address of the site (from list_sites).", "type": "string" } }, "required": [ "site", "confirm" ], "type": "object" }, "name": "rollback_site", "outputSchema": null }, { "description": "Check whether a domain name is available to register and what it would cost (EUR). A full name such as myidea.com is one lookup, the same result as the website search. A name with no ending, such as mybakery, is checked as .com, .nl and .app, with availability and price for each. Works with no account. Read-only: use it to propose a REAL free name. Buying is a human step in the dashboard; this never spends money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "name": { "description": "A full domain such as \"myidea.com\", or a bare name such as \"mybakery\" (checked as .com, .nl and .app).", "type": "string" } }, "required": [ "name" ], "type": "object" }, "name": "search_domain", "outputSchema": null }, { "description": "(needs account token) Send the DropTheHassle team a note about a site: something missing, something that went wrong. Only with the human's words or OK. No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "message": { "description": "The note, 3 to 2000 characters.", "type": "string" }, "site": { "description": "The address of a site on this account (from list_sites).", "type": "string" } }, "required": [ "site", "message" ], "type": "object" }, "name": "send_feedback", "outputSchema": null }, { "description": "(needs account token) Switch a site's statistics between standard (cookieless, no banner, the default) and enhanced (adds a cookie consent banner for every visitor, and the click heatmap). Enhanced changes what visitors see: ask the human and pass confirm=true only after they said yes. No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "confirm": { "description": "Needed for enhanced: true ONLY after the human explicitly said yes.", "type": "boolean" }, "level": { "description": "standard or enhanced.", "enum": [ "standard", "enhanced" ], "type": "string" }, "site": { "description": "The address of a site on this account (from list_sites).", "type": "string" } }, "required": [ "site", "level" ], "type": "object" }, "name": "set_analytics_level", "outputSchema": null }, { "description": "(needs account token) Link an HTTPS backend you host on AWS, Google Cloud, DigitalOcean or your own server behind a DropTheHassle name. The URL must be an HTTPS origin (no path, port 443, a hostname with an IPv4 address); paths pass through unchanged. With uploaded files the path rules (default /api/*) reverse-proxy to the backend and the rest stays static; without uploaded files the WHOLE site serves from the backend. It needs the account token of the human: WITHOUT site it creates a fresh FREE site in that account first, so a backend-only project goes live on its own link in one call; with site, the site must be claimed in that account (a site token or an unclaimed site gets 403 \"Claim this site first to connect a backend.\"). Perfect for a deploy script: call this with the new URL after every backend deploy. Pass url=\"\" (with site) to unlink. Changing an existing site changes what its visitors get: pass confirm=true only after the human said yes (a deploy script the human set up counts). A new site needs no confirm. No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "confirm": { "description": "Needed with site: true ONLY after the human said yes to this change.", "type": "boolean" }, "paths": { "description": "Optional path rules for split mode, e.g. [\"/api/*\", \"/webhooks/*\"]. Default [\"/api/*\"].", "items": { "type": "string" }, "type": "array" }, "site": { "description": "Optional: the address of an existing site to link (from list_sites). Omit to create a new free site served fully from the backend.", "type": "string" }, "slug": { "description": "Optional address label for a NEW site, e.g. \"myapp\" -> myapp.dropthehassle.app. Errors when taken.", "type": "string" }, "url": { "description": "The HTTPS origin of the backend, e.g. \"https://api.example.com\". Empty string (with site) unlinks.", "type": "string" } }, "required": [ "url" ], "type": "object" }, "name": "set_backend", "outputSchema": null }, { "description": "(needs account token) Set or remove a site's browser icon (favicon) or its share preview image. Pass the image as content (base64) or, with the local server, file (a path on this computer). clear=true removes it. Works once the site has its own domain. No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "clear": { "description": "true removes the current image.", "type": "boolean" }, "content": { "description": "The image file as standard base64 (PNG, JPEG, SVG, ICO, WebP).", "type": "string" }, "file": { "description": "Local server only: path to the image file on this computer.", "type": "string" }, "filename": { "description": "Optional: the file name, e.g. logo.png.", "type": "string" }, "kind": { "description": "favicon (browser icon) or share (preview image).", "enum": [ "favicon", "share" ], "type": "string" }, "site": { "description": "The address of a site on this account (from list_sites).", "type": "string" } }, "required": [ "site", "kind" ], "type": "object" }, "name": "set_site_image", "outputSchema": null }, { "description": "(needs account token) Visitor numbers for a site on this account: visitors, page views, top pages, referrers, countries and devices, with a one-sentence summary. The same numbers the dashboard shows. Read-only. No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "period": { "description": "day, week, month (default) or year.", "enum": [ "day", "week", "month", "year" ], "type": "string" }, "site": { "description": "The address of a site on this account (from list_sites).", "type": "string" } }, "required": [ "site" ], "type": "object" }, "name": "site_analytics", "outputSchema": null }, { "description": "(needs account token) Get the one line that embeds a Site of the Month award, plus instructions for pasting it. The ribbon names the award and the period and links to the verification page. Read-only. No money. Pass site for a site on this account, or host for any confirmed winner. Omit both to list awards this account has earned. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "host": { "description": "Optional. The public host that was featured.", "type": "string" }, "site": { "description": "Optional. The address of a site on this account (from list_sites).", "type": "string" } }, "type": "object" }, "name": "site_of_the_day_badge", "outputSchema": null }, { "description": "(needs account token) Everything about one site in one read: whether it is live, its links, the last deploys, whether the previous version can be restored, its domains with renewal date and auto-renew, and its email. Read-only. No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "site": { "description": "The address of a site on this account (from list_sites).", "type": "string" } }, "required": [ "site" ], "type": "object" }, "name": "site_status", "outputSchema": null }, { "description": "(needs account token) Take one domain off a site that has several, onto its own new site (a coming-soon page until you deploy to it). point_domain moves it back. Ask the human and pass confirm=true only after they said yes. No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "confirm": { "description": "true ONLY after the human explicitly said yes to this exact change.", "type": "boolean" }, "domain": { "description": "The domain to split off (see site_status).", "type": "string" }, "site": { "description": "The address of a site on this account (from list_sites).", "type": "string" } }, "required": [ "site", "domain", "confirm" ], "type": "object" }, "name": "split_domain", "outputSchema": null }, { "description": "(needs account token) Start moving a domain registered here to another registrar (no lock-in). Auto-renew goes off right away and the transfer code is emailed to the account within a day; the domain keeps working until it moves. Ask the human and pass confirm=true only after they said yes. No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "confirm": { "description": "true ONLY after the human explicitly said yes to transferring it out.", "type": "boolean" }, "domain": { "description": "Optional: which domain of that site. Default: its main domain.", "type": "string" }, "site": { "description": "The address of the site the domain belongs to (from list_sites).", "type": "string" } }, "required": [ "site", "confirm" ], "type": "object" }, "name": "transfer_domain_out", "outputSchema": null }, { "description": "(needs account token) Turn off email for a site's domain: it stops renewing and keeps working until the end of the month already paid. Ask the human and pass confirm=true only after they said yes. Turning it back on stays a dashboard step. Saves money, never charges. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "confirm": { "description": "true ONLY after the human explicitly said yes to this exact change.", "type": "boolean" }, "site": { "description": "The address of a site on this account (from list_sites).", "type": "string" } }, "required": [ "site", "confirm" ], "type": "object" }, "name": "turn_off_email", "outputSchema": null }, { "description": "(needs account token) Set how a site appears in search results and when shared: name, brand colour, search title and description, share title and description. Site-wide, or for one of its domains with domain. Works once the site has its own domain. No money. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": { "brand_color": { "description": "Optional: a hex colour, e.g. \"#1a73e8\".", "type": "string" }, "display_name": { "description": "Optional: the site's name.", "type": "string" }, "domain": { "description": "Optional: apply to this one domain of the site only.", "type": "string" }, "serp_description": { "description": "Optional: the description in search results.", "type": "string" }, "serp_title": { "description": "Optional: the title in search results.", "type": "string" }, "share_description": { "description": "Optional: the description when the link is shared.", "type": "string" }, "share_title": { "description": "Optional: the title when the link is shared.", "type": "string" }, "site": { "description": "The address of a site on this account (from list_sites).", "type": "string" } }, "required": [ "site" ], "type": "object" }, "name": "update_site_settings", "outputSchema": null }, { "description": "Confirm the connection. With no token this lists what already works: deploy_site and search_domain. With a token it names the account. Never buy anything without asking me. Never buy a domain, email or subscription for me without asking first. When something costs money, give me the payment link and let me pay.", "inputSchema": { "properties": {}, "type": "object" }, "name": "whoami", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:62b69aa811c6a03d5d6f85891a38e13a8c07e2e3693993ff72fdb36065f4d6c1 | sha256sum