Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, email [email protected] and we’ll put it right.

run.domani/domani

REMOTE · DOMANI.RUN · SCANNED AUG 3

Internet identity for AI agents: register or broker domains, email, DNS - pay by card or USDC.

Available components

+9 this week 80 Trust /100
Trust breakdown (6 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score →

Endpoint Security91
Transport & Reachability100
Schema Quality & AI Usability72
  • AI-judged instruction clarity (good).Pass
  • Context-footprint check failed: tool/resource definitions use about 13023 tokens (~106/item across 122 items; 122 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
  • Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage99
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 97% of tool parameters carry a description.Partial
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

remote · domani.run

# add to Claude Code
claude mcp add --transport http run-domani-domani https://domani.run/mcp
# ~/.codex/config.toml
[mcp_servers.run-domani-domani]
url = "https://domani.run/mcp"
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "run-domani-domani": {
      "type": "remote",
      "url": "https://domani.run/mcp",
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add run-domani-domani --url https://domani.run/mcp --transport streamable-http
# ~/.hermes/config.yaml
mcp_servers:
  run-domani-domani:
    url: "https://domani.run/mcp"
// mcp.json
{
  "mcpServers": {
    "run-domani-domani": {
      "type": "http",
      "url": "https://domani.run/mcp"
    }
  }
}

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 3 Aug 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.

  • 1 Aug 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.

  • 31 Jul 26 +5
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 30 Jul 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 29 Jul 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.

  • 28 Jul 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes. Other categories moved too: Schema Quality & AI Usability rose 2.

  • 27 Jul 26 +1
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 26 Jul 26 70

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 3 Aug 2026 · Probed https://domani.run/mcp

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=domani.run CN=YE2,O=Let's Encrypt,C=US 6 Jul 2026 4 Oct 2026 ECDSA 256 ECDSA-SHA384 5e06f2de1b09b36aabe6b402d014b770fe8
SANs: *.domani.run, domani.run
CN=YE2,O=Let's Encrypt,C=US (CA) CN=Root YE,O=ISRG,C=US 3 Sept 2025 2 Sept 2028 ECDSA 384 ECDSA-SHA384 4df3b15dd6c0784c507cd37b58e6f115
CN=Root YE,O=ISRG,C=US (CA) CN=ISRG Root X2,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 ECDSA 384 ECDSA-SHA384 872165fc34b6e5fba8add5b3705fb53a
CN=ISRG Root X2,O=Internet Security Research Group,C=US (CA) CN=ISRG Root X1,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 ECDSA 384 SHA256-RSA 6c8f1dc727c7117f7baf853ac980f9cd
DNSSEC secure

Validation of domani.run. Secure

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
run. present 37315 8 Verified
domani.run. present 2371 13 Verified
domani.run. Verified address RRset verified with the apex keys
Authentication Challenged, unverified

The endpoint asked for a token, but we could not retrieve and validate the RFC 9728 metadata that tells a client how to obtain one.

Result Challenged, unverified
Enforced On tool calls
HTTP status 200
Header Value
strict-transport-security max-age=63072000
content-security-policy default-src 'self'; script-src 'self' 'unsafe-inline' https://js.stripe.com https://vercel.live https://va.vercel-scripts.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: https:; font-src 'self'; connect-src 'self' https://api.stripe.com https://cloudflare-dns.com https://vercel.live https://va.vercel-scripts.com; frame-src https://js.stripe.com https://vercel.live
x-content-type-options nosniff
x-frame-options DENY
referrer-policy strict-origin-when-cross-origin
permissions-policy camera=(), microphone=(), geolocation=()

Protected resource metadata

Retrieved No
Problem no_resource_metadata
Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://domani.run/mcp Verified 200
http (plaintext) http://domani.run/mcp HTTPS enforced 308 https://domani.run/mcp
MCP tools — 122 exposed · ~13,023 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.

Tool Tokens
acquire_domain ~110

Ask domani to acquire a specific taken, unlisted domain on your behalf. Agents source the owner via RDAP, reach out anonymously, and negotiate - commission-only, no upfront fee. Owner interest opens an anonymous negotiation you can accept/counter. Note: many owners are unreachable (GDPR-redacted WHOIS). Requires deals:write scope.

NameTypeReqDescription
domainstringyesThe taken domain you want, e.g. dream.com
max_budgetnumberYour ceiling in USD (optional)

No output schema declared.

No examples provided.

add_dnssec ~164

Publish a DNSSEC delegation-signer (DS) record at the registry to enable DNSSEC. Get the DS values from your zone provider after signing the zone.

NameTypeReqDescription
algorithmstringyesDNSSEC algorithm number, e.g. 13 (ECDSAP256SHA256)
digeststringyesHex digest of the DNSKEY
digestTypestringyesDigest type number, e.g. 2 (SHA-256)
domainstringyesDomain name to enable DNSSEC for
flagsstringOptional DNSKEY flags, e.g. 257 (KSK)
keyTagstringyesKey tag, e.g. 12345
maxSigLifestringOptional max signature life in seconds

No output schema declared.

No examples provided.

add_mail_rule ~200

Add an inbound filtering rule to a mailbox. If a message matches (by from/to/subject/body), the action runs: drop, mark_read, forward (to action_arg), webhook_only (skip forward-to), or label (with action_arg). Rules run in priority order (lower first); first match wins. API: POST /api/emails/{address}/rules.

NameTypeReqDescription
actionstringyesWhat to do on match
action_argstringFor 'forward': the destination email. For 'label': the label value.
domainstringyesMailbox domain
enabledbooleanDefault true
match_fieldstringyesWhich field to match on
match_opstringyesHow to match
match_valuestringyesThe value/pattern to match
priorityintegerLower runs first (default 0)
slugstringyesMailbox slug

No output schema declared.

No examples provided.

add_mailbox_alias ~137

Add an alias address that delivers into an existing mailbox, without using a mailbox slot. Useful for multiple public addresses (sales@, hello@, contact@) landing in one inbox. The alias must be on the same domain as the mailbox. API: POST /api/emails/{address}/aliases.

NameTypeReqDescription
aliasstringyesAlias address - a bare slug ('sales') or a full address on the same domain ('[email protected]')
domainstringyesMailbox domain, e.g. mysite.com
slugstringyesMailbox slug the alias delivers to, e.g. inbox

No output schema declared.

No examples provided.

add_suppression ~76

Manually add an address to your suppression list so future sends skip it. Hard bounces and complaints are added automatically - use this for addresses you want to stop emailing. API: POST /api/suppressions.

NameTypeReqDescription
addressstringyesEmail address to suppress
reasonstringReason (default: manual)

No output schema declared.

No examples provided.

browse_marketplace ~77

Browse domains for sale on the Domani marketplace. Returns all active listings with prices. Use buy_domain to purchase a listed domain.

NameTypeReqDescription
max_pricenumberMaximum price in USD
orderstringSort order (default: asc)
sortstringSort by price or TLD (default: price)

No output schema declared.

No examples provided.

buy_aftermarket ~240

Buy a taken domain that's listed for sale on an aftermarket (Afternic/Sedo) at its buy-now price, natively - no external site. Use when search shows a domain with for_sale.buyable = true. Always confirm the price with the user first. Pass max_price to cap it. If the listing is make-offer only (not buyable), use acquire_domain (broker) to negotiate instead. Crypto/USDC works like buy_domain (402 -> pay -> retry with payment_tx).

NameTypeReqDescription
domainstringyesThe taken, for-sale domain to buy, e.g. kami.world
max_pricenumberHard ceiling in USD. Defaults to the listing's buy-now price. The purchase is rejected if the live price is above this.
payment_chainstringChain the USDC payment was sent on. Required with payment_tx.
payment_methodstring'card' to charge the card on file, 'usdc' to pay with crypto.
payment_txstringTx hash of a USDC payment already sent on-chain (step 2 of the USDC flow).

No output schema declared.

No examples provided.

buy_domain ~326

Purchase one or more domains. Always confirm with the user before calling. Accepts a single domain or an array of up to 10 (card only for bulk). If the user wants to pay with crypto/USDC: call with payment_method: 'usdc' - you'll get a 402 with a wallet address and amount. Tell the user to send that amount in USDC, then once they give you the tx hash, retry with payment_tx and payment_chain. Don't explain protocol details to the user - just tell them the address, amount, and chain.

NameTypeReqDescription
domainstringSingle domain to purchase, e.g. mysite.com
domainsarrayArray of domains to purchase, e.g. ["a.com", "b.dev"]. Max 10.
max_pricenumberCeiling in USD for the total charge. If the real price is above it, the purchase fails with PRICE_ABOVE_MAX and nothing is charged. Set it from the price the user approved.
payment_chainstringChain the USDC payment was sent on. Required with payment_tx.
payment_methodstringPayment method: 'card' to charge card on file, 'usdc' to pay with USDC. Overrides the user's default preference for this request.
payment_txstringTransaction hash of a USDC payment already sent on-chain. Required for step 2 of USDC flow.
yearsintegerNumber of years to register (1-10, default 1). Price is multiplied by years.

No output schema declared.

No examples provided.

cancel_backorder ~46

Stop watching a domain by cancelling a backorder. Only backorders in the 'watching' state can be cancelled.

NameTypeReqDescription
idstringyesThe backorder ID to cancel

No output schema declared.

No examples provided.

cancel_broker_request ~35

Cancel an active domain acquisition request. Requires deals:write scope.

NameTypeReqDescription
request_idstringyesThe broker request ID

No output schema declared.

No examples provided.

cancel_plan ~40

Cancel the user's Pro subscription. The subscription remains active until the end of the current billing period, then reverts to the free plan. Returns the cancellation date.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

check_email ~51

Check email DNS health for a domain: MX records, SPF, DMARC, DKIM. Auto-detects the email provider from MX records.

NameTypeReqDescription
domainstringyesDomain to check email health for

No output schema declared.

No examples provided.

check_email_deliverability ~194

Run the same deliverability and abuse-safety checks used by send_email, without sending or consuming quota. Use this before authentication, payment, onboarding, or high-volume messages. API: POST /api/emails/{address}/deliverability-check.

NameTypeReqDescription
allow_risky_contentbooleanDeprecated compatibility field. Public HTTPS third-party auth links are allowed with a warning; objective safety blocks cannot be overridden
attachmentsarrayAttachment metadata only; content is not required for preflight
domainstringyesSender mailbox domain, e.g. mysite.com or domani.run
htmlstringHTML body
idempotency_keystringStable idempotency key for this logical message
slugstringyesSender mailbox slug, e.g. hello
subjectstringEmail subject line
textstringPlain-text body

No output schema declared.

No examples provided.

check_transfer_eligibility ~78

Pre-check whether a domain can be transferred. Returns transfer price, eligibility status, and any blockers (unsupported TLD, ICANN waiting period, domain locked, etc.). Always call this before transfer_domain to verify eligibility and show the user the price.

NameTypeReqDescription
domainstringyesDomain to check, e.g. mysite.com

No output schema declared.

No examples provided.

check_transfer_status ~52

Check the status of an inbound domain transfer. Returns detailed status (pending_owner, pending_admin, pending_registry, completed, cancelled) with actionable hints.

NameTypeReqDescription
domainstringyesDomain to check transfer status for

No output schema declared.

No examples provided.

claim_identity ~150

Give your agent a free identity at <handle>.domani.run - a live profile page, no domain purchase, instantly. The frictionless way to start; upgrade to your own real domain later. Optional name/bio/emoji/email/links.

NameTypeReqDescription
biostringShort description (<= 280 chars)
emailstringPublic contact email (e.g. your free @domani.run inbox)
emojistringAvatar emoji
linksarrayUp to 6 links
namestringDisplay name
slugstringyesThe handle - becomes <slug>.domani.run (lowercase letters, numbers, hyphens)

No output schema declared.

No examples provided.

clear_catch_all ~56

Remove the catch-all on a domain. Email to unmatched addresses will be dropped again. API: DELETE /api/domains/{domain}/email/catch-all.

NameTypeReqDescription
domainstringyesDomain to clear the catch-all on

No output schema declared.

No examples provided.

clone_dns ~120

Copy the DNS setup of one domain you own onto another (e.g. brand.com → brand.dev with the same A/CNAME/MX). Merges by default (source wins on collisions, keeps the target's other records); set replace=true for an exact mirror.

NameTypeReqDescription
from_domainstringyesSource domain to copy DNS from (must be yours)
replacebooleanExact mirror - drop target records the source doesn't have. Default: merge
to_domainstringyesTarget domain to write the DNS onto (must be yours)

No output schema declared.

No examples provided.

connect_domain ~287

Connect a domain to a hosting or email provider. Auto-detects provider from target, or accepts explicit provider name. For domains bought through the platform, DNS records are set automatically (status: dns_set). For imported domains (external registrar), returns the records as instructions to add manually (status: manual_setup_required). If the connect would REPLACE existing MX records pointing at another provider, it fails with MX_REPLACEMENT_REQUIRES_CONFIRMATION - preview with dry_run, confirm with the user, then retry with confirm_replace_mx. The response includes a next_steps array with provider-specific actions. Supported hosting: vercel, netlify, cloudflare-pages, github-pages, railway, fly. Email: google-workspace, fastmail, proton.

NameTypeReqDescription
confirm_replace_mxbooleanConfirm replacing existing MX records that point at another provider (moves the domain's email)
domainstringyesDomain to connect, e.g. mysite.com
dry_runbooleanPreview only - returns the diff (create/replace/keep) without writing
methodstringConnection method if provider has multiple, e.g. cname-only
providerstringExplicit provider name, e.g. vercel, google-workspace
targetstringTarget URL for auto-detection, e.g. my-app.vercel.app

No output schema declared.

No examples provided.

create_backorder ~171

Place a backorder on a domain that is currently registered to someone else. We watch it and automatically register it for the user when it becomes available (drops) - availability is polled every few minutes. The user is charged only if the catch succeeds - no upfront fee. Requires a card on file or payment_method 'balance'. Confirm the domain with the user first. Best-effort: a contested drop may be taken by a specialized drop-catcher first.

NameTypeReqDescription
domainstringyesThe currently-taken domain to watch and catch on drop, e.g. taken.com
max_pricenumberMax USD to pay when caught. Defaults to the current registration price.
payment_methodstringHow to pay when caught: 'card' or 'balance' (marketplace credit).

No output schema declared.

No examples provided.

create_hosted_mailbox ~176

Create a real IMAP/SMTP mailbox on a domain you own (connect Apple Mail, Thunderbird, or any mail client), instead of an API mailbox. Pass workspace_id to create it in a workspace you own and atomically adopt the domain boundary. Provisions the mailbox on our mail server, publishes DNS when we manage it, and returns the DNS records, mail client settings, and a one-time app password. API: POST /api/emails with kind=hosted.

NameTypeReqDescription
domainstringyesA domain you own, e.g. mysite.com
namestringDisplay name for the mailbox
slugstringyesLocal part, e.g. 'me' for [email protected]
workspace_idstringWorkspace ID from list_workspaces; owner-only

No output schema declared.

No examples provided.

create_mailbox ~257

Create an email address. Specify slug (required) and optionally domain. Pass workspace_id to create it inside a workspace you own; custom-domain creation atomically adopts the domain and all unscoped sibling mailboxes so a domain is never split. For custom domains: email DNS is auto-configured on first use. For imported domains (external registrar): returns DNS records to add manually at your registrar. For domani.run: omit domain. Max 5 mailboxes per account, 1 free @domani.run per user. Pass force=true to override existing email provider (Google Workspace, etc.). API: POST /api/emails with {address}.

NameTypeReqDescription
domainstringDomain for the mailbox. Omit for domani.run
forcebooleanOverride existing MX records (e.g. Google Workspace). Default: false
namestringDisplay name for outbound emails, e.g. 'John Doe'. Shows as 'John Doe <slug@domain>' in recipients' inboxes
slugstringyesLocal part of the email address, e.g. 'hello' for [email protected]
workspace_idstringWorkspace ID from list_workspaces; owner-only

No output schema declared.

No examples provided.

create_mailbox_credential ~90

Create an app password for a hosted mailbox, used as the password in a mail client. The secret is returned once - store it. API: POST /api/emails/{address}/credentials.

NameTypeReqDescription
domainstringyesHosted mailbox domain
labelstringLabel to identify this app password, e.g. 'Laptop Mail'
slugstringyesHosted mailbox slug

No output schema declared.

No examples provided.

create_token ~933

Create a new API token with optional scoped permissions and spend caps. The full key is returned only once - save it immediately. A token can only grant scopes it already has (scope attenuation) and spend caps at or below its own. Scopes: domains:read (GET /api/domains, GET /api/domains/{domain}, GET /api/domains/{domain}/dns, /dnssec, /status, /email/check, /auth-code, /transfer-away, /transfer-status, /analytics), domains:write (PUT /api/domains/{domain}/dns, POST/DELETE /api/domains/{domain}/dnssec, POST /connect, POST /verify, PUT /settings, PUT /parking, PUT/DELETE /api/domains/{domain}/for-sale, POST /api/domains/import, POST /import/verify), domains:transfer (POST /api/domains/buy, POST /transfer, POST /renew (involves payment, includes marketplace purchases)), tokens:read (GET /api/tokens), tokens:write (POST /api/tokens, DELETE /api/tokens/{id}), webhooks:read (GET /api/webhooks, GET /api/webhooks/{id}/deliveries), webhooks:write (POST /api/webhooks, PATCH /api/webhooks/{id}, DELETE /api/webhooks/{id}), email:read (GET /api/emails, /api/emails/{address}, /api/emails/{address}/messages, /api/emails/{address}/aliases, /api/email/changes, /api/domains/{domain}/email/status, /api/domains/{domain}/email/deliverability, /api/suppressions), email:write (POST /api/emails, POST /api/emails/{address}/send, POST /api/domains/{domain}/email/setup, aliases + catch-all, POST/DELETE /api/suppressions), email:delete (Permanently delete messages already in Trash. Moving messages to Trash only requires email:write. Grant this scope only to agents allowed to irreversibly erase email content), email:auth_secrets (Read messages classified as authentication mail (OTP / verification codes, password resets, magic links). Without it, email:read still lists them but subject and body come back redacted - so a stolen agent token can't harvest 2FA codes. Grant it only to agents that genuinely need to complete logins), account:read (GET /api/me, GET /api/agents/identity), account:write…

NameTypeReqDescription
agent_identity_idstringOptional owned AgentIdentity id. Mail actions made with this token are attributed to that agent
expires_atstringAbsolute expiration date (ISO 8601). Alternative to expires_in
expires_inintegerToken lifetime in seconds (min 3600 = 1h, max 31536000 = 1y). Omit for no expiration
max_per_monthnumberRolling calendar-month spend cap in USD for all paid operations with this token
max_per_txnumberPer-transaction spend cap in USD - any single charge above it is rejected server-side (SPEND_CAP_EXCEEDED)
namestringHuman-readable label, e.g. 'CI/CD', 'Sub-Agent'. Defaults to 'CLI'
scopesarrayPermission scopes for this token. Defaults to parent token's scopes. Use ['*'] for full access

No output schema declared.

No examples provided.

create_webhook ~114

Register a new webhook endpoint to receive event notifications. The URL must use HTTPS. Choose which events to subscribe to (e.g. domain.purchased, transfer.completed). The webhook secret is returned only once - save it to verify incoming payloads with HMAC-SHA256.

NameTypeReqDescription
eventsarrayyesEvent types to subscribe to, e.g. ["domain.purchased", "dns.updated"]. Use list_webhook_events to see all available types.
urlstringyesHTTPS URL that will receive webhook POST requests

No output schema declared.

No examples provided.

delete_dnssec ~61

Remove a DNSSEC delegation-signer (DS) record at the registry by its key tag. Removing all DS records disables DNSSEC.

NameTypeReqDescription
domainstringyesDomain name
keyTagstringyesKey tag of the DS record to remove

No output schema declared.

No examples provided.

delete_mailbox ~83

Delete a mailbox and all its messages (including attachments). Requires confirm=true. Call without confirm first to see what will be deleted. API: DELETE /api/emails/{address}.

NameTypeReqDescription
confirmbooleanMust be true to actually delete. Omit to preview.
domainstringyesMailbox domain
slugstringyesMailbox slug

No output schema declared.

No examples provided.

delete_message ~74

Move an email message to Trash. This is reversible with update_email_messages action=restore. API: DELETE /api/emails/{address}/messages/{id}.

NameTypeReqDescription
domainstringyesMailbox domain
message_idstringyesID of the message to delete
slugstringyesMailbox slug

No output schema declared.

No examples provided.

delete_messages ~111

Retry-safely move messages to Trash and return a durable per-item receipt. Reuse the exact idempotency key after timeouts. Reversible with update_email_messages action=restore. API: POST /api/emails/{address}/messages/delete.

NameTypeReqDescription
domainstringyesMailbox domain
idempotency_keystringyesCaller-stable key for this exact logical batch
message_idsarrayyesIDs of messages to delete
slugstringyesMailbox slug

No output schema declared.

No examples provided.

delete_webhook ~41

Delete a webhook endpoint. All pending deliveries will be cancelled. This action cannot be undone.

NameTypeReqDescription
webhook_idstringyesID of the webhook to delete

No output schema declared.

No examples provided.

dns_check ~203

Fast DNS-based domain existence check. Tests if a name is taken across many TLDs at once (faster than search, no pricing). Returns 'taken' (definitely registered) and 'candidates' (potentially available). Use this to narrow down before calling search for pricing. Use preset: 'extended' to check 30+ creative/exotic TLDs when basic ones are all taken.

NameTypeReqDescription
namestringyesDomain name without TLD, e.g. 'myapp'
presetstringUse a curated TLD preset: 'basic' (10 common TLDs) or 'extended' (30+ including creative/exotic TLDs). Merged with explicit tlds if both provided. Defaults to 'basic' when tlds is omitted.
tldsarrayTLDs to check, e.g. ['com', 'dev', 'ai', 'io']. Optional if preset is provided.

No output schema declared.

No examples provided.

domain_status ~40

Check domain health: DNS propagation, SSL status, email (MX) configuration, and expiry date

NameTypeReqDescription
domainstringyesDomain to check status for

No output schema declared.

No examples provided.

finalize_negotiation ~135

As the buyer, pay the agreed price to create the escrow deal and start the transfer. Same payment methods as a purchase (card, USDC, x402). Requires domains:transfer scope. For a broker-sourced acquisition, if the agreed price is above the max_budget you set, this returns BUDGET_EXCEEDED - retry with confirm_over_budget: true to proceed anyway.

NameTypeReqDescription
confirm_over_budgetbooleanSet true to finalize a broker deal above the max_budget you set on the acquisition request
negotiation_idstringyesThe agreed negotiation to finalize
payment_methodstring

No output schema declared.

No examples provided.

forward_message ~121

Forward an email message to another address. Includes the original message context (sender, date, subject, body). Optionally prepend a note. Subject is auto-prefixed with 'Fwd:'. API: POST /api/emails/{address}/messages/{id}/forward.

NameTypeReqDescription
domainstringyesMailbox domain
message_idstringyesID of the message to forward
slugstringyesMailbox slug
textstringOptional note to prepend to the forwarded message
toyesRecipient email address(es)

No output schema declared.

No examples provided.

get_account ~36

Get your account details, payment status, contact info status (has_contact), and referral code. Contact info must be set before purchasing domains.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_activation ~33

Get truthful product milestones and the next useful actions for this account. Use this after authentication instead of treating token setup as success.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_auth_code ~58

Get the EPP/auth code needed to transfer a domain to another registrar. Automatically unlocks the domain if it's locked. Give this code to the new registrar to initiate the transfer.

NameTypeReqDescription
domainstringyesDomain to get auth code for

No output schema declared.

No examples provided.

get_broker_inquiry_state ~80

Owner-agent read path: poll the current, anonymized state of a broker inquiry with your token before acting. Returns the domain, the buyer's offer on the table, whose move it is, and the actions available now. Never exposes the buyer's identity or budget.

NameTypeReqDescription
tokenstringyesThe outreach token from your inquiry email

No output schema declared.

No examples provided.

get_deal_invoice ~66

Get a role-aware receipt/statement for a marketplace deal. Buyers see what they paid; sellers see the sale, the platform commission line, and the net payout. Works for every payment method. Requires deals:read scope.

NameTypeReqDescription
deal_idstringyesThe deal ID

No output schema declared.

No examples provided.

get_dns ~56

Get DNS records for a domain you own. Returns each record with a stable id, plus a zone_version token - pass it to set_dns to detect concurrent zone changes.

NameTypeReqDescription
domainstringyesDomain name to get DNS records for

No output schema declared.

No examples provided.

get_dnssec ~58

List the DNSSEC delegation-signer (DS) records for a domain you own, and whether DNSSEC is enabled. Pair with TLSA records (via set_dns) for DANE.

NameTypeReqDescription
domainstringyesDomain name to inspect

No output schema declared.

No examples provided.

get_domain_email_status ~45

Check if email is enabled on a domain and whether DNS records are verified. Returns record status and mailbox count.

NameTypeReqDescription
domainstringyesDomain to check email status for

No output schema declared.

No examples provided.

get_domain_info ~48

Get detailed information about a domain you own, including auto-renew status, security lock, WHOIS privacy, and provider data.

NameTypeReqDescription
domainstringyesDomain name to get info for

No output schema declared.

No examples provided.

get_domain_preview ~62

Get website preview metadata (title, description, image, favicon) for any domain. Useful for understanding what a taken domain is currently used for. Data is cached for 7 days.

NameTypeReqDescription
domainstringyesDomain to preview, e.g. google.com

No output schema declared.

No examples provided.

get_email_deliverability ~81

Get an owner-scoped email health report for a domain. Separates deterministic DNS readiness, 30-day bounce and complaint outcomes, account safety state, and measured inbox placement. A readiness score is not an Inbox probability. API: GET /api/domains/{domain}/email/deliverability.

NameTypeReqDescription
domainstringyesDomain to inspect

No output schema declared.

No examples provided.

get_mailbox_client_settings ~77

Get IMAP/SMTP settings for a hosted mailbox to configure a mail client (Apple Mail, Thunderbird). Username is the full address; password is an app password. API: GET /api/emails/{address}/client-settings.

NameTypeReqDescription
domainstringyesHosted mailbox domain
slugstringyesHosted mailbox slug

No output schema declared.

No examples provided.

get_message ~72

Get a single message by ID with full content, headers, delivery events, and attachment download URLs. API: GET /api/emails/{address}/messages/{id}.

NameTypeReqDescription
domainstringyesMailbox domain
message_idstringyesMessage ID
slugstringyesMailbox slug

No output schema declared.

No examples provided.

get_nameservers ~50

Get the authoritative nameservers configured for a domain you own. If empty, DNS operations (parking, email, connect) will fail.

NameTypeReqDescription
domainstringyesDomain name to get nameservers for

No output schema declared.

No examples provided.

get_parking_analytics ~78

Get visitor analytics for a parked domain - page views, inquiries, conversion rate, 30-day daily breakdown, and the 5 most recent inquiries. Use this to check how much traffic a parked domain gets and whether it's converting into buyer inquiries.

NameTypeReqDescription
domainstringyesDomain to get analytics for, e.g. example.com

No output schema declared.

No examples provided.

get_transfer_away ~47

Check the status of an outbound domain transfer. Use after getting an auth code and initiating the transfer at the new registrar.

NameTypeReqDescription
domainstringyesDomain to check transfer status for

No output schema declared.

No examples provided.