DropTheHassle
Your AI puts your site online on a free link with HTTPS. Your own .com later. No token needed.
Sollte ich dies verwenden
Qualität und Sicherheit
Befunde (4)
- HIGH
- MEDIUMin award_readiness
- LOWin set_backend
- INFOin award_readiness
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": {
"dropthehassle": {
"command": "npx",
"args": [
"dropthehassle-mcp"
]
}
}
}Ausführbare Pakete
0.5.0stdioRemote-Endpunkte
https://dropthehassle.com/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (36)
🟢whoami
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.
Eingabe-Schema
{
"type": "object",
"properties": {}
}🟢list_sites
(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.
Eingabe-Schema
{
"type": "object",
"properties": {}
}🟢search_domain(name)
Use when the user asks whether a domain or .com name is available or what it costs. Read-only; never registers or charges. One name per call: there is no batch of several names. 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 in that same call. Works with no 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.
Eingabe-Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "A full domain such as \"myidea.com\", or a bare name such as \"mybakery\" (checked as .com, .nl and .app)."
}
},
"required": [
"name"
]
}🔴deploy_site(files, site, name, slug, email)
Use when the user asks to put a site, HTML page or built folder online. Returns a free live HTTPS link plus a claim link; the human claims and keeps it with their email. 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. In that same question, propose one short name from the project (package.json name, folder name or page title), for example "Shall I put it on lisas-bakery.dropthehassle.app?". Pass what they confirm as name. If they have no preference, pass your proposal. If it is taken, the reply lists free names: ask again. Do not pass a name when updating an existing site. 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.
Eingabe-Schema
{
"type": "object",
"properties": {
"files": {
"type": "array",
"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": {
"type": "object",
"required": [
"path",
"content"
],
"properties": {
"path": {
"type": "string",
"description": "Relative path, for example index.html or css/site.css."
},
"content": {
"type": "string",
"description": "File contents. UTF-8 text, or standard base64 when encoding is base64."
},
"encoding": {
"type": "string",
"enum": [
"utf8",
"base64"
],
"description": "utf8 (default) or base64."
}
}
}
},
"site": {
"type": "string",
"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."
},
"name": {
"type": "string",
"description": "The free address label, for example \"lisas-bakery\" for lisas-bakery.dropthehassle.app. Pass the name the human confirmed. If they have no preference, pass your proposal. Works with no account token."
},
"slug": {
"type": "string",
"description": "Same as name. Older clients send this."
},
"email": {
"type": "string",
"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."
}
},
"required": [
"files"
]
}🔴point_domain(domain, to_site, confirm)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"domain": {
"type": "string",
"description": "A domain already on this account."
},
"to_site": {
"type": "string",
"description": "The address of the site to point it at, e.g. myproject.dropthehassle.app (from list_sites)."
},
"confirm": {
"type": "boolean",
"description": "true ONLY after the human explicitly said yes to moving this domain."
}
},
"required": [
"domain",
"to_site",
"confirm"
]
}🔴choose_link(site, name, confirm, claim_url, site_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. With an account, pass site (its address). Without an account, pass claim_url (the claim link from deploy_site) or site_token for that unclaimed site. 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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "With an account: the address of the site to rename (from list_sites)."
},
"name": {
"type": "string",
"description": "The label only, e.g. \"myproject\" for myproject.dropthehassle.app."
},
"confirm": {
"type": "boolean",
"description": "true ONLY after the human owner explicitly approved this exact name."
},
"claim_url": {
"type": "string",
"description": "Without an account: the claim link deploy_site returned (the part after # is the secret)."
},
"site_token": {
"type": "string",
"description": "Without an account: that site's token, from the deploy reply. A site token sent as Bearer works too."
}
},
"required": [
"name",
"confirm"
]
}🔴set_backend(site, url, paths, slug, confirm)
(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 is served as uploaded files; 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."). A deploy script can 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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"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."
},
"url": {
"type": "string",
"description": "The HTTPS origin of the backend, e.g. \"https://api.example.com\". Empty string (with site) unlinks."
},
"paths": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional path rules for split mode, e.g. [\"/api/*\", \"/webhooks/*\"]. Default [\"/api/*\"]."
},
"slug": {
"type": "string",
"description": "Optional address label for a NEW site, e.g. \"myapp\" -> myapp.dropthehassle.app. Errors when taken."
},
"confirm": {
"type": "boolean",
"description": "Needed with site: true ONLY after the human said yes to this change."
}
},
"required": [
"url"
]
}🟢get_checkout_link(site, name, extras)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "The address of the site the domain should attach to (from list_sites)."
},
"name": {
"type": "string",
"description": "The domain to register, e.g. \"myidea.com\"."
},
"extras": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional extra domain names on the same payment."
}
},
"required": [
"site",
"name"
]
}🟢site_of_the_day_badge(site, host)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "Optional. The address of a site on this account (from list_sites)."
},
"host": {
"type": "string",
"description": "Optional. The public host that was featured."
}
}
}🟢award_readiness(host)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"host": {
"type": "string",
"description": "The public host of a site on this account, e.g. \"example.com\"."
}
},
"required": [
"host"
]
}🟢site_status(site)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "The address of a site on this account (from list_sites)."
}
},
"required": [
"site"
]
}🟢site_analytics(site, period)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "The address of a site on this account (from list_sites)."
},
"period": {
"type": "string",
"enum": [
"day",
"week",
"month",
"year"
],
"description": "day, week, month (default) or year."
}
},
"required": [
"site"
]
}🔴rollback_site(site, confirm)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "The address of the site (from list_sites)."
},
"confirm": {
"type": "boolean",
"description": "true ONLY after the human explicitly said yes to rolling back."
}
},
"required": [
"site",
"confirm"
]
}🔴delete_site(site, confirm)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "The address of the site to delete (from list_sites)."
},
"confirm": {
"type": "boolean",
"description": "true ONLY after the human explicitly said yes to deleting this site."
}
},
"required": [
"site",
"confirm"
]
}🔴transfer_domain_out(site, domain, confirm)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "The address of the site the domain belongs to (from list_sites)."
},
"domain": {
"type": "string",
"description": "Optional: which domain of that site. Default: its main domain."
},
"confirm": {
"type": "boolean",
"description": "true ONLY after the human explicitly said yes to transferring it out."
}
},
"required": [
"site",
"confirm"
]
}🔴domain_renewal(site, domain, autorenew, confirm)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "The address of a site on this account (from list_sites)."
},
"domain": {
"type": "string",
"description": "Optional: which domain, when changing auto-renew. Default: the site's main domain."
},
"autorenew": {
"type": "boolean",
"description": "Optional: false stops the yearly renewal (needs confirm=true). Omit to only read."
},
"confirm": {
"type": "boolean",
"description": "true ONLY after the human explicitly said yes to stopping the renewal."
}
},
"required": [
"site"
]
}🟢email_status(site)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "The address of a site on this account (from list_sites)."
}
},
"required": [
"site"
]
}🟡get_email_checkout_link(site, address)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "The address of the site whose domain gets email (from list_sites)."
},
"address": {
"type": "string",
"description": "The part before the @ of the main inbox, e.g. \"hello\". Default hello."
}
},
"required": [
"site"
]
}🟡connect_domain(site, domain)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "The address of a site on this account (from list_sites)."
},
"domain": {
"type": "string",
"description": "The domain, e.g. example.com."
}
},
"required": [
"site",
"domain"
]
}🔴make_primary_domain(site, domain, confirm)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "The address of a site on this account (from list_sites)."
},
"domain": {
"type": "string",
"description": "One of the site's domains (see site_status)."
},
"confirm": {
"type": "boolean",
"description": "true ONLY after the human explicitly said yes to this exact change."
}
},
"required": [
"site",
"domain",
"confirm"
]
}🔴split_domain(site, domain, confirm)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "The address of a site on this account (from list_sites)."
},
"domain": {
"type": "string",
"description": "The domain to split off (see site_status)."
},
"confirm": {
"type": "boolean",
"description": "true ONLY after the human explicitly said yes to this exact change."
}
},
"required": [
"site",
"domain",
"confirm"
]
}🔴update_site_settings(site, domain, display_name, brand_color, serp_title, ...)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "The address of a site on this account (from list_sites)."
},
"domain": {
"type": "string",
"description": "Optional: apply to this one domain of the site only."
},
"display_name": {
"type": "string",
"description": "Optional: the site's name."
},
"brand_color": {
"type": "string",
"description": "Optional: a hex colour, e.g. \"#1a73e8\"."
},
"serp_title": {
"type": "string",
"description": "Optional: the title in search results."
},
"serp_description": {
"type": "string",
"description": "Optional: the description in search results."
},
"share_title": {
"type": "string",
"description": "Optional: the title when the link is shared."
},
"share_description": {
"type": "string",
"description": "Optional: the description when the link is shared."
}
},
"required": [
"site"
]
}🔴set_site_image(site, kind, content, file, filename, ...)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "The address of a site on this account (from list_sites)."
},
"kind": {
"type": "string",
"enum": [
"favicon",
"share"
],
"description": "favicon (browser icon) or share (preview image)."
},
"content": {
"type": "string",
"description": "The image file as standard base64 (PNG, JPEG, SVG, ICO, WebP)."
},
"file": {
"type": "string",
"description": "Local server only: path to the image file on this computer."
},
"filename": {
"type": "string",
"description": "Optional: the file name, e.g. logo.png."
},
"clear": {
"type": "boolean",
"description": "true removes the current image."
}
},
"required": [
"site",
"kind"
]
}🔴set_analytics_level(site, level, confirm)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "The address of a site on this account (from list_sites)."
},
"level": {
"type": "string",
"enum": [
"standard",
"enhanced"
],
"description": "standard or enhanced."
},
"confirm": {
"type": "boolean",
"description": "Needed for enhanced: true ONLY after the human explicitly said yes."
}
},
"required": [
"site",
"level"
]
}🟢check_live(site, backend)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "The address of a site on this account (from list_sites)."
},
"backend": {
"type": "boolean",
"description": "true tests the linked backend instead."
}
},
"required": [
"site"
]
}🟡resend_owner_verification(site, domain)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "The address of a site on this account (from list_sites)."
},
"domain": {
"type": "string",
"description": "The domain registered here."
}
},
"required": [
"site",
"domain"
]
}🟡claim_site(claim_url)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"claim_url": {
"type": "string",
"description": "The full claim link, or the code after the #."
}
},
"required": [
"claim_url"
]
}🟢list_invoices
(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.
Eingabe-Schema
{
"type": "object",
"properties": {}
}⚪resend_receipt
(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.
Eingabe-Schema
{
"type": "object",
"properties": {}
}🔴remove_email_address(site, address, confirm)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "The address of a site on this account (from list_sites)."
},
"address": {
"type": "string",
"description": "The address, e.g. \"info\" or [email protected]."
},
"confirm": {
"type": "boolean",
"description": "true ONLY after the human explicitly said yes to this exact change."
}
},
"required": [
"site",
"address",
"confirm"
]
}🔴turn_off_email(site, confirm)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "The address of a site on this account (from list_sites)."
},
"confirm": {
"type": "boolean",
"description": "true ONLY after the human explicitly said yes to this exact change."
}
},
"required": [
"site",
"confirm"
]
}🔴rename_main_inbox(site, address, confirm)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "The address of a site on this account (from list_sites)."
},
"address": {
"type": "string",
"description": "The new part before the @, e.g. \"info\"."
},
"confirm": {
"type": "boolean",
"description": "true ONLY after the human explicitly said yes to this exact change."
}
},
"required": [
"site",
"address",
"confirm"
]
}⚪gallery_preference(featured)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"featured": {
"type": "boolean",
"description": "true: may be considered. false: never."
}
},
"required": [
"featured"
]
}🟡send_feedback(site, message)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "The address of a site on this account (from list_sites)."
},
"message": {
"type": "string",
"description": "The note, 3 to 2000 characters."
}
},
"required": [
"site",
"message"
]
}🟡request_google_business(site)
(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.
Eingabe-Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "The address of a site on this account (from list_sites)."
}
},
"required": [
"site"
]
}🟢design_inspiration
Returns a link to the gallery of customer sites picked as Site of the Month. Use when the user asks for design examples. 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.
Eingabe-Schema
{
"type": "object",
"properties": {}
}Community
Nachweis