Tool reference
30 tools, scoped to the authenticated user. Badges: read never mutates, write creates or updates, delete permanently removes data.
Workspaces
A workspace holds projects, registrars and their domains, shared with the people its Owners invite. Most people have one, and tools cover every workspace you can see unless you pass workspaceId.
list_workspaces readList the workspaces you belong to, with your role (Owner, Editor or Viewer), whether you see the whole workspace or selected projects and registrar accounts, and which one new things go into by default.
No parameters.
Domains
The core of the portfolio. Every domain belongs to a project and a registrar account.
list_domains readList domains in your portfolio, with optional filters and pagination. Archived domains are left out unless you ask for them. Returns lean rows by default, each with displayStatus and archived; the response includes total and hasMore.
projectIduuidoptional· filter to one projectworkspaceIduuidoptional· filter to one workspace (see list_workspaces)registrarAccountIduuidoptional· filter to one registrar accountdisplayStatus"Active" | "Expiring soon" | "Expired" | "Unknown" | "Not at registrar" | "Archived"optional· status as the app shows it, worked out from the expiry date, registrar sync and archivingarchived"exclude" | "include" | "only"optionaldefault "exclude"· whether archived domains are left out, added, or the only ones returnedstatus"Active" | "Expired" | "Transferred" | "Unknown"optional· older filter, worked out from the expiry date; "Transferred" returns archived domainssearchstringoptional· case-insensitive substring match on the domain name (% and _ match literally)expiringWithinDaysintegeroptional· 1 to 3650; expiring within N days, excludes already-expired unless includeExpiredincludeExpiredbooleanoptionaldefault false· include past-due domains when filtering by expiringWithinDaystimezonestringoptional· IANA zone that decides 'today' for expiringWithinDays; defaults to your account time zone, else UTC; max 64 charsfields"summary" | "full"optionaldefault "summary"· full adds notes, ids, dateLastChecked, archivedAt, archivedNote and timestampslimitintegeroptionaldefault 25· 1 to 500offsetintegeroptionaldefault 0· skip rows for paginationget_domain readFetch one domain by id or by exact domain name, archived or not. Includes displayStatus, archived, archivedAt and archivedNote, plus publicRecords: the domain report looked up from public records (registrar, dates, statuses, locks, nameservers, DNS, email setup, HTTPS, website, issues) with checkedAt, refreshed weekly. If the name exists under several registrar accounts, returns an error listing the matching ids; retry with id.
iduuidoptional· pass id or domainName; if both are given, both must matchdomainNamestringoptional· exact name, case-insensitiveadd_domain writeAdd a domain to a project under a registrar account. Its status follows the expiry date.
domainNamestringrequired· max 253 charsprojectIduuidrequiredregistrarAccountIduuidrequiredautoRenewbooleanoptionaldefault falseexpiryDatestringoptional· YYYY-MM-DDnotesstringoptional· max 2000 charsarchivedbooleanoptional· true adds it already archivedarchivedNotestringoptional· max 500 charsstatus"Active" | "Expired" | "Transferred" | "Unknown"optional· optional, worked out from expiryDate when left out; "Transferred" archives the domainupdate_domain writeUpdate fields on a domain. Only provided fields change. Archive a domain you no longer track (for example one transferred to another company) with archived: true and an optional archivedNote; archived: false brings it back.
iduuidrequireddomainNamestringoptional· max 253 charsautoRenewbooleanoptionalexpiryDatestring | nulloptional· YYYY-MM-DD; null clears itnotesstringoptional· max 2000 chars; empty string clears itprojectIduuidoptional· move to another projectregistrarAccountIduuidoptionalarchivedbooleanoptional· true archives, false unarchivesarchivedNotestring | nulloptional· max 500 chars; kept while archivedstatus"Active" | "Expired" | "Transferred" | "Unknown"optional· optional, follows expiryDate when that changes; "Transferred" archives the domaindelete_domain deletePermanently delete a domain. Irreversible. Owners only; Editors archive instead.
iduuidrequiredbulk_add_domains writeAdd up to 200 domains in one call. Returns { added, errors } as counts, plus results.added (the created rows) and results.errors ([{ index, domainName, error }]). A single bad entry never fails the batch.
domainsobject[]required· 1 to 200 entries, each shaped like add_domainlookup_domains readLook domains up in the public registry: registrar, expiry date, days left, and whether each is already in your account. Returns results[] with domain, registered, registrarSlug, registrarName, expiryDate, daysToExpiry, alreadyTracked.
domainsstring[]required· 1 to 25 domain namesquick_add_domains writeAdd domains by registrar, with no setup first. Each registrar gets your existing account for it, or a new one called Main. Domains already in your account are updated. Returns { created, updated, errors, projectId, accounts }.
domainsobject[]required· 1 to 1000 entries of { domainName, registrar, expiryDate? }; registrar is a slug from lookup_domains (e.g. namecheap) or a nameprojectIduuidoptional· defaults to your first project, created if you have noneworkspaceIduuidoptional· workspace to create it in; defaults to the first one you owndomains_expiring_soon readDomains expiring within N days, soonest first, leaving out archived ones. Excludes already-expired domains unless includeExpired is set.
withinDaysintegeroptionaldefault 30· 1 to 3650includeExpiredbooleanoptionaldefault false· also include overdue (past-due) domainstimezonestringoptional· IANA zone that decides 'today', e.g. Australia/Sydney; defaults to your account time zone, else UTC; max 64 charslimitintegeroptionaldefault 100· 1 to 500workspaceIduuidoptional· filter to one workspace (see list_workspaces)Projects
Groups of domains inside a workspace, like one business or one client. Members can be given access to selected projects.
list_projects readList the projects you can see, with your role, the workspace each is in, and a domain count (archived domains not counted).
workspaceIduuidoptional· filter to one workspace (see list_workspaces)add_project writeCreate a project in a workspace. Owners, and Editors with the whole workspace.
namestringrequired· max 100 charsdescriptionstringoptional· max 500 charsworkspaceIduuidoptional· workspace to create it in; defaults to the first one you ownupdate_project writeRename or re-describe a project. Owners, and Editors with the whole workspace.
iduuidrequirednamestringoptional· max 100 charsdescriptionstringoptional· max 500 charsdelete_project deleteDelete a project and ALL of its domains. Owner only. Irreversible. Requires confirm: true.
iduuidrequiredconfirmbooleanoptionaldefault false· must be true to delete; otherwise returns the domain count that would be removedRegistrars
The registrar platforms you use (Namecheap, Porkbun, Cloudflare, …).
list_registrars readList your registrar platforms with account counts.
workspaceIduuidoptional· filter to one workspace (see list_workspaces)add_registrar writeAdd a registrar platform.
namestringrequired· max 100 charsurlstringoptional· e.g. namecheap.com; max 500 charsworkspaceIduuidoptional· workspace to create it in; defaults to the first one you ownupdate_registrar writeUpdate a registrar's name or URL.
iduuidrequirednamestringoptional· max 100 charsurlstringoptional· max 500 charsdelete_registrar deleteDelete a registrar. Cascades to its accounts and their domains. Irreversible. Requires confirm: true.
iduuidrequiredconfirmbooleanoptionaldefault false· must be true to delete; otherwise returns the account + domain counts that would be removedRegistrar accounts
Individual logins at a registrar. One account can hold domains across many projects. API credentials cannot be set through MCP.
list_registrar_accounts readList your registrar accounts, optionally filtered.
registrarIduuidoptional· filter by registrarworkspaceIduuidoptional· filter to one workspace (see list_workspaces)add_registrar_account writeAdd an account under one of your registrars.
registrarIduuidrequireddisplayNamestringrequired· max 200 charsaccountUsernamestringrequired· max 100 charscontactEmailstringoptional· valid email, max 254 charsdomainListUrlstringoptional· max 1000 charsupdate_registrar_account writeUpdate fields on a registrar account.
iduuidrequireddisplayNamestringoptional· max 200 charsaccountUsernamestringoptional· max 100 charscontactEmailstring | nulloptional· valid email, max 254 chars; empty string or null clears itdomainListUrlstringoptional· max 1000 charsisActivebooleanoptionaldelete_registrar_account deleteDelete a registrar account. Cascades to its domains. Irreversible. Requires confirm: true.
iduuidrequiredconfirmbooleanoptionaldefault false· must be true to delete; otherwise returns the domain count that would be removedMonitoring
Watch any domain, yours or not. Lemon Domains checks the public records of every monitored domain each day and records what changed. Domains in the portfolio are monitored automatically; each workspace can watch up to 1,000 more.
list_monitored readEvery monitored domain in the workspace, yours and watched, with registrar, expiry, when it was last checked, the latest change and how many changes you haven't opened.
workspaceIduuidoptional· defaults to the first workspace you ownmonitor_domains writeStart watching domains you don't own. Returns which were added, already in the portfolio, already watched, invalid, or over the 1,000-domain limit.
domainsstring[]required· domains such as example.com, max 1000 per call, each max 253 charactersworkspaceIduuidoptional· defaults to the first workspace you ownstop_monitoring deleteStop watching a domain you don't own. Its recorded changes are kept.
domainstringrequired· a watched domain, max 253 charactersworkspaceIduuidoptional· defaults to the first workspace you ownlist_changes readChanges on monitored domains, newest first, each with kind, old and new value and when it was found: registrar, transfer lock, nameservers, expiry, expired or pending delete, became available, status codes, DNSSEC, hosting, email provider, SSL, website up or down, parked or for sale.
domainstringoptional· only this domain, max 253 characterskindstringoptional· only this kind, e.g. registrar, nameservers, transfer_lock, expirysincestringoptional· ISO date or time, max 40 characterslimitintegeroptionaldefault 100· 1 to 500workspaceIduuidoptional· defaults to the first workspace you ownDomain intelligence
Look up any domain on the internet, yours or not: registration, locks, DNS, website, certificate, email setup, history and transfer readiness. Each account gets 200 reports, 2,000 availability checks and 200 transfer checks a day.
domain_report readEverything about one domain: registrar (with IANA id, abuse contact and how Lemon Domains syncs it), created, updated, expiry and last-transfer dates, EPP status codes in plain English, transfer/delete/update locks, lifecycle (redemption, hold, pending delete), DNSSEC, nameservers and DNS provider, every common DNS record, website status, redirects, host, title and security headers, the network the site's IP belongs to, parked or for-sale detection, HTTPS certificate, email provider with SPF/DMARC/DKIM/MTA-STS/TLS-RPT/BIMI, subdomains from certificate transparency logs, Tranco popularity rank, indicative TLD prices and value, history (changes Lemon Domains has seen and Internet Archive captures by year), the same name under other extensions, transfer readiness, a ranked list of issues and a 0-100 health score. Falls back to WHOIS for TLDs without RDAP. If the domain is in your account, adds its Lemon Domains history.
domainstringrequired· a registered domain such as example.com, max 253 characters; internationalised names are acceptedfreshbooleanoptionaldefault false· skip the 10-minute cache and look everything up againcheck_availability readWhether domain names are free to register, up to 50 per call: full domains, or words combined with extensions, prefixes and suffixes. Each row is available, taken (with registrar and expiry), dropping (redemption or pending delete) or unknown, plus totals for each status.
domainsstring[]optional· full domains such as example.com, max 100wordsstring[]optional· names without an extension, combined with every entry in tlds; max 50tldsstring[]optionaldefault ["com"]· extensions for words, without the dotprefixesstring[]optional· also try each word after these, e.g. ["get", "try"]suffixesstring[]optional· also try each word before these, e.g. ["hq", "app"]pluralbooleanoptional· also try the plural of each wordhacksbooleanoptional· also try domain hacks, e.g. quillba.se for quillbasetransfer_readiness readWhether a domain can move to another registrar today: verdict (ready, unlock first, wait, blocked), the checks behind it (locks, 60-day windows after registration and transfer, expiry, redemption or hold, DNSSEC), the date it becomes transferable, step-by-step instructions for its registrar, and the indicative transfer price.
domainstringrequired· a registered domain such as example.com, max 253 charactersSync (read-only)
Inspect recent registrar sync runs and how they went.
recent_sync_logs readMost recent sync logs across your registrar accounts.
limitintegeroptionaldefault 20· 1 to 100registrarAccountIduuidoptional