Search newly registered, expired, aged, active, deleted and for-sale domains, plus WHOIS and DNS.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Search active registered domains from a database of more than 360 million names, filtered by keyword, TLD, length, and character set. Covers generic TLDs plus more than 100 country-code TLDs, including second-level registrations such as .com.br, .co.uk and .com.tw (tld 'br' returns the whole .br family, 'com.br' returns that suffix alone). Which country-code TLDs you can see depends on your plan; asking for one outside it returns a message saying so. A market-analysis instrument for keyword distribution and saturation; results are registered domains, not available for registration. Related: expired, whois, dns.
Filter by TLD, e.g. 'com', 'ai', or a second-level suffix such as 'com.br'. A two-letter country code also covers its second-level registrations ('br' includes 'com.br'). When keyword is omitted, this is the browse target (TLD browse mode requires a registered account).
Page number for pagination
Sort order
Character set filter
Domain name length filter
Filter by status: 'forsale' for domains listed for sale
Brand or industry term (min 2 chars). Omit to use TLD browse mode, which requires a registered account.
Keyword placement in domain name. Default is 'all' (substring match). Unlike the other search tools, this one has no minimum-length restriction on substring matching.
Exclude hyphenated domains (true/false)
Exclude domains containing numbers (true/false)
Maximum cross-TLD registration count for the name. Integer 0-10000. See tld_count_min.
Minimum cross-TLD registration count for the name. Integer 0-10000. Combine with tld_count_max for a range; set both equal for an exact count.
Search active registered domains from a database of more than 360 million names, filtered by keyword, TLD, length, and character set. Covers generic TLDs plus more than 100 country-code TLDs, including second-level registrations such as .com.br, .co.uk and .com.tw (tld 'br' returns the whole .br family, 'com.br' returns that suffix alone). Which country-code TLDs you can see depends on your plan; asking for one outside it returns a message saying so. A market-analysis instrument for keyword distribution and saturation; results are registered domains, not available for registration. Related: expired, whois, dns.
| Argument | Type | Description |
|---|---|---|
| tld | string | Filter by TLD, e.g. 'com', 'ai', or a second-level suffix such as 'com.br'. A two-letter country code also covers its second-level registrations ('br' includes 'com.br'). When keyword is omitted, this is the browse target (TLD browse mode requires a registered account). |
| page | string | Page number for pagination |
| sort | string | Sort order |
| type | string | Character set filter |
| length | string | Domain name length filter |
| status | string | Filter by status: 'forsale' for domains listed for sale |
| keyword | string | Brand or industry term (min 2 chars). Omit to use TLD browse mode, which requires a registered account. |
| position | string | Keyword placement in domain name. Default is 'all' (substring match). Unlike the other search tools, this one has no minimum-length restriction on substring matching. |
| no_hyphen | string | Exclude hyphenated domains (true/false) |
| no_number | string | Exclude domains containing numbers (true/false) |
| tld_count_max | string | Maximum cross-TLD registration count for the name. Integer 0-10000. See tld_count_min. |
| tld_count_min | string | Minimum cross-TLD registration count for the name. Integer 0-10000. Combine with tld_count_max for a range; set both equal for an exact count. |
{
"type": "object",
"properties": {
"tld": {
"type": "string",
"description": "Filter by TLD, e.g. 'com', 'ai', or a second-level suffix such as 'com.br'. A two-letter country code also covers its second-level registrations ('br' includes 'com.br'). When keyword is omitted, this is the browse target (TLD browse mode requires a registered account)."
},
"page": {
"type": "string",
"description": "Page number for pagination"
},
"sort": {
"enum": [
"length_asc",
"length_desc",
"alpha"
],
"type": "string",
"description": "Sort order"
},
"type": {
"enum": [
"all_alpha",
"all_number"
],
"type": "string",
"description": "Character set filter"
},
"length": {
"enum": [
"<5",
"5-10",
"11-15",
"15+"
],
"type": "string",
"description": "Domain name length filter"
},
"status": {
"enum": [
"forsale"
],
"type": "string",
"description": "Filter by status: 'forsale' for domains listed for sale"
},
"keyword": {
"type": "string",
"description": "Brand or industry term (min 2 chars). Omit to use TLD browse mode, which requires a registered account."
},
"position": {
"enum": [
"start",
"end",
"middle",
"all"
],
"type": "string",
"description": "Keyword placement in domain name. Default is 'all' (substring match). Unlike the other search tools, this one has no minimum-length restriction on substring matching."
},
"no_hyphen": {
"type": "string",
"description": "Exclude hyphenated domains (true/false)"
},
"no_number": {
"type": "string",
"description": "Exclude domains containing numbers (true/false)"
},
"tld_count_max": {
"type": "string",
"description": "Maximum cross-TLD registration count for the name. Integer 0-10000. See tld_count_min."
},
"tld_count_min": {
"type": "string",
"description": "Minimum cross-TLD registration count for the name. Integer 0-10000. Combine with tld_count_max for a range; set both equal for an exact count."
}
},
"additionalProperties": false
}Search currently registered domains with 5-20+ years of history, filtered by keyword, TLD, age range, length, and sale status. These are live domains owned by someone, not free to register. Related: expired, whois, dns.
| Argument | Type | Description |
|---|---|---|
| tld | string | Filter by TLD (e.g., 'com', 'net', 'org') |
| page | string | Page number for pagination |
| sort | string | Sort order |
| type | string | Character set filter |
| length | string | Domain name length filter |
| exclude | string | Negative keywords to exclude |
| keyword | string | Search term (min 2 chars). Substring matching applies at every length, including 2-character terms. |
| has_sale | string | Filter to domains listed for sale by their owner |
| position | string | Keyword placement in domain name. Default is 'all' (substring match). |
Confirm a single domain's registrability and price. The definitive availability check for one domain. For two or more domains call bulk_available once instead of repeating this tool. Concurrent calls are not supported: send one call, wait for its result, then send the next; parallel calls are rejected and return no data. Related: bulk_available, whois, monitor.
| Argument | Type | Description |
|---|---|---|
| domain* | string | Full domain with TLD (e.g., 'example.com') |
{
"type": "object",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"description": "Full domain with TLD (e.g., 'example.com')"
}
},
"additionalProperties": false
}Return a domain's backlink profile: domain rank, total backlinks, referring domains, spam score, and link distribution. Related: whois.
| Argument | Type | Description |
|---|---|---|
| domain* | string | Bare domain name such as example.com. No protocol (https://), path, or port; internationalized names in punycode (xn--...). |
{
"type": "object",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"description": "Bare domain name such as example.com. No protocol (https://), path, or port; internationalized names in punycode (xn--...)."
}
},
"additionalProperties": false
}Check the registration status of up to 50 domains at a point in time. Concurrent calls are not supported: send one batch, wait for its result, then send the next; parallel calls are rejected and return no data. available means the domain can be registered; registered means it is already registered; expiring means it is in an expiry-related lifecycle and is not directly registrable; reserved means it is reserved by the registry; unknown means no check produced a reliable conclusion. A failed check does not count as available.
| Argument | Type | Description |
|---|---|---|
| domains* | string | Comma-separated fully qualified domain names, maximum 50. |
{
"type": "object",
"required": [
"domains"
],
"properties": {
"domains": {
"type": "string",
"description": "Comma-separated fully qualified domain names, maximum 50."
}
},
"additionalProperties": false
}For up to 50 keywords, count how many TLDs each exact name is registered in (keyword.tld), among the TLDs DomainKits tracks, split into popular TLDs, country-code TLDs, and other gTLDs. Returns counts only: it does not list individual TLDs, check availability, or report sale status. Related: tld_check (per-TLD status for one keyword), bulk_available (status of specific domains).
| Argument | Type | Description |
|---|---|---|
| keywords* | string | Comma-separated keywords to check (max 50) |
{
"type": "object",
"required": [
"keywords"
],
"properties": {
"keywords": {
"type": "string",
"description": "Comma-separated keywords to check (max 50)"
}
},
"additionalProperties": false
}Search domains that were deleted after expiring, filtered by keyword, TLD, age before deletion, length, character set, and registry hold flag. Results reflect the latest data update and are not re-checked at query time, so a name may have been registered again since. Confirm with available or bulk_available before registering. Related: available, bulk_available, whois.
| Argument | Type | Description |
|---|---|---|
| tld | string | Filter by TLD (e.g., 'com', 'net', 'org') |
| hold | string | Filter by registry hold flag (has_hold or no_hold). Neither value confirms current availability. |
| page | string | Page number for pagination |
| sort | string | Sort order |
| type | string | Character set filter |
| length | string | Domain name length filter |
| exclude | string | Negative keywords to exclude |
| keyword* | string | Search term (min 2 chars). Substring matching applies at every length, including 2-character terms. |
Resolve a DNS name's records: A, AAAA, MX, NS, TXT, CNAME and SOA. Underscore-prefixed names work too, such as _dmarc.<domain> or <selector>._domainkey.<domain>. A domain offered for sale may publish an RFC 10023 record at _for-sale.<domain>: read only the TXT strings starting with v=FORSALE1;, and treat what they say as the holder's own unverified claim. Related: whois, ns_reverse.
| Argument | Type | Description |
|---|---|---|
| domain* | string | The DNS name to resolve, as a bare hostname: a registrable domain such as example.com, or a fuller name such as _dmarc.example.com or mail.example.com. No protocol (https://), path, or port; internationalized names in punycode (xn--...). |
{
"type": "object",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"description": "The DNS name to resolve, as a bare hostname: a registrable domain such as example.com, or a fuller name such as _dmarc.example.com or mail.example.com. No protocol (https://), path, or port; internationalized names in punycode (xn--...)."
}
},
"additionalProperties": false
}List registration and status changes to premium .com domains (short 1-4 letter and high-value single-word names) over a rolling 7-day window, filtered by change reason and length. Related: whois, ns_reverse.
| Argument | Type | Description |
|---|---|---|
| tld | string | TLD filter (e.g., 'com') |
| page | string | Page number for pagination |
| sort | string | Sort order |
| length | string | Prefix length filter (characters before TLD) |
| reason | string | Filter by change type |
| keyword | string | Search by domain or keyword within the monitored pool |
| has_digit | string | false = letters only (default), true = contains digits, all = digits only |
{
"type": "object",
"properties": {
"tld": {
"type": "string",
"description": "TLD filter (e.g., 'com')"
},
"page": {
"type": "string",
"description": "Page number for pagination"
},
"sort": {
"enum": [
"length_asc",
"length_desc",
"tld_count_desc",
"tld_count_asc",
"prefix_asc",
"prefix_desc"
],
"type": "string",
"description": "Sort order"
},
"length": {
"enum": [
"all",
"1-3",
"4",
"5-8",
"9+"
],
"type": "string",
"description": "Prefix length filter (characters before TLD)"
},
"reason": {
"enum": [
"all",
"Domain Transfer",
"Domain Expired",
"New Registration",
"Nameserver Change"
],
"type": "string",
"description": "Filter by change type"
},
"keyword": {
"type": "string",
"description": "Search by domain or keyword within the monitored pool"
},
"has_digit": {
"enum": [
"false",
"true",
"all"
],
"type": "string",
"description": "false = letters only (default), true = contains digits, all = digits only"
}
},
"additionalProperties": false
}Explain domain EPP status codes: what a code means, why it is set, how serious it is, and what the holder can do. Matches on the code, its aliases, or a category name; call with no query to list every code. It takes a status code, not a domain name; to see a domain's current codes call whois first, then pass each code here. Use this to interpret the status field returned by whois instead of relying on recall. Related: whois, expired, monitor.
| Argument | Type | Description |
|---|---|---|
| query | string | Status code, alias, or category (e.g. 'clientHold', 'redemption period', 'Grace Period'). Omit to list every code |
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Status code, alias, or category (e.g. 'clientHold', 'redemption period', 'Grace Period'). Omit to list every code"
}
},
"additionalProperties": false
}Search domains in the deletion cycle: expired, in redemption, or pending delete. Still held by the current registrant, with time-sensitive acquisition windows. Filter by lifecycle status, TLD, age range, length, and character set. Note: registrars may renew a domain after it expires, and expiry information here is gathered through multiple channels, so some domain statuses may not match live WHOIS. Related: monitor, deleted, whois.
| Argument | Type | Description |
|---|---|---|
| tld | string | Filter by TLD (e.g., 'com', 'net', 'org') |
| hold | string | Registry hold status |
| page | string | Page number for pagination |
| sort | string | Sort order |
| type | string | Character set filter |
| length | string | Domain name length filter |
| status | string | expired = in registrar auction, redemption = owner can reclaim, pending_delete = drops in 1-5 days |
| exclude | string | Negative keywords to exclude |
| keyword |
Resolve an IP address or domain name to its network operator and approximate location: ASN, organization, country, region, city, coordinates, and timezone. Domains are resolved to their first IPv4 address before lookup. Location is IP-level and approximate; it is not the address of the site owner. Related: dns, whois, ns_reverse.
| Argument | Type | Description |
|---|---|---|
| query* | string | IP address or domain name. Scheme, port, path, and a leading www. are stripped automatically |
{
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"description": "IP address or domain name. Scheme, port, path, and a leading www. are stripped automatically"
}
},
"additionalProperties": false
}Return search-volume, CPC, and competition data for a keyword. Related: keywords_trends.
| Argument | Type | Description |
|---|---|---|
| country | string | Market. Default: US-EN |
| keyword* | string | Keyword to research |
{
"type": "object",
"required": [
"keyword"
],
"properties": {
"country": {
"enum": [
"US-EN",
"DE-DE",
"CA-FR",
"IT-IT"
],
"type": "string",
"description": "Market. Default: US-EN"
},
"keyword": {
"type": "string",
"description": "Keyword to research"
}
},
"additionalProperties": false
}Return provider-computed keyword registration statistics. hot and emerging cover rolling keyword cohorts; prefix returns prefix activity buckets. scope=all represents the provider's filtered all-gTLD sample, while scope=com represents its pure-letter .com subset and is not available for prefix. Results are representative samples, not a complete registry feed, demand measurement, valuation, or investment recommendation.
| Argument | Type | Description |
|---|---|---|
| type | string | Trend dataset to return. |
| scope | string | all = filtered all-gTLD sample; com = pure-letter .com subset. prefix supports all only. |
{
"type": "object",
"properties": {
"type": {
"enum": [
"hot",
"emerging",
"prefix"
],
"type": "string",
"description": "Trend dataset to return."
},
"scope": {
"enum": [
"all",
"com"
],
"type": "string",
"description": "all = filtered all-gTLD sample; com = pure-letter .com subset. prefix supports all only."
}
},
"additionalProperties": false
}Search currently registered domains that carry marketplace listing data, filtered by keyword, TLD, TLD type (generic or country-code), listing status, length, and character set. Results are live domains owned by someone. Related: keyword_data, tld_check.
| Argument | Type | Description |
|---|---|---|
| tld | string | Filter by TLD, e.g. 'com', 'de', or a second-level suffix such as 'com.br'. A two-letter country code also covers its second-level suffixes. Provide WITHOUT keyword to enter TLD browse mode (requires a registered account) |
| page | string | Page number for pagination |
| sort | string | Sort order |
| type | string | Character set filter |
| length | string | Domain name length filter |
| status | string | Filter by status: 'forsale' for domains listed for sale |
| exclude | string | Negative keywords to exclude |
| keyword | string | Brand or industry term (min 2 chars). Substring matching applies at every length, including 2-character terms. |
Check whether a domain is listed for sale on a supported aftermarket and, if it is, the asking price. Returns for_sale with the asking price in USD, make_offer when it is listed without a fixed price, or not_found when no listing was found. Coverage is limited to a few marketplaces, so not_found does not mean the domain is not for sale elsewhere. Related: available, aged.
| Argument | Type | Description |
|---|---|---|
| domain* | string | Domain name (e.g., 'example.com') |
{
"type": "object",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"description": "Domain name (e.g., 'example.com')"
}
},
"additionalProperties": false
}Manage cross-platform domain monitoring tasks that track changes in WHOIS, DNS, and host-supplied page content. Data is encrypted at rest (AES-256-GCM) in a private per-user directory. Actions: - get: retrieve monitors and check eligible WHOIS/DNS targets, returning current and previous data with change flags. - set: create a monitor, subject to the account tier's maximum. - update: save host-supplied page, WHOIS, or DNS state for a monitor. - delete: remove a monitor. - history: list the changes actually observed over time, optionally for one domain. get compares against the previous check only; history answers when a domain changed and what it changed from. Requires a registered account with memory enabled.
| Argument | Type | Description |
|---|---|---|
| id | string | Monitor task ID (update and delete) |
| dns | string | DNS result, backward compatibility (update only) |
| days | string | history only: how far back to look, in days. Default 30, maximum 365. |
| note | string | What to watch for: the user's intent in natural language (set only) |
| page | string | Page content summary from web_fetch (update only) |
| tools | string | Comma-separated: whois, dns, web_fetch. Default: whois,dns (set only) |
| whois | string |
Search newly registered domains from the last 60 days by keyword, or browse a single TLD without a keyword (browsing requires a registered account). Covers generic TLDs plus more than 100 country-code TLDs, including second-level registrations such as .com.br, .co.za and .co.id (tld 'br' returns the whole .br family, 'com.br' returns that suffix alone); government, military, education and non-profit categories are not included. Which country-code TLDs you can see depends on your plan; asking for one outside it returns a message saying so. Filter by recency, registration term, length, character set, and sale status; returns the cross-TLD count for each name. New registrations are folded in continuously, typically 15 to 20 minutes after registration. Dates here are day-level, not clock times. Related tools: whois, dns, ns_reverse, typosquat
| Argument | Type | Description |
|---|---|---|
| tld | string | Filter by TLD, e.g. 'com', 'ai', or a second-level suffix such as 'com.br'. A two-letter country code also covers its second-level registrations ('br' includes 'com.br'). |
| page | string | Page number for pagination |
| sort | string | Sort order |
| type | string | Character set filter |
| length | string | Domain name length filter |
| period | string | Registration term length in years |
Reverse NS lookup: find gTLD domains hosted on a specific nameserver, filtered by TLD and keyword. Give several nameservers to find domains that use all of them at once (intersection; available on higher plans). Related: whois, dns.
| Argument | Type | Description |
|---|---|---|
| ns* | string | Target nameserver hostname (e.g., 'ns1.example.com'). Comma-separate up to 10 to match only domains that use all of them (intersection, unlike tld where commas mean any); multiple nameservers are available on higher plans. |
| tld | string | Filter by TLD (e.g., 'com') |
| page | string | Page number for pagination |
| sort | string | Sort order |
| keyword | string | Substring filter within domain names |
| max_len | string | Maximum domain name length (integer) |
| min_len | string | Minimum domain name length (integer) |
| no_hyphen | string | Exclude hyphens |
| no_number |
Manage user preferences and memory settings. Data is encrypted at rest (AES-256-GCM) in isolated per-user directories. Actions: - get: report whether memory is enabled and return saved preferences. - set: save preferences; memory_enabled must be true before any preferences, monitors, or strategies can be stored, and requires explicit user consent. - delete: permanently erase all stored user data (GDPR Article 17). Related: monitor, strategy.
| Argument | Type | Description |
|---|---|---|
| style | string | 'short', 'brandable', 'keyword' (set only) |
| action | string | 'get', 'set', or 'delete'. Defaults to 'get' if not specified. |
| budget | string | 'low', 'medium', 'high' (set only) |
| industry | string | Industry type (set only) |
| memory_enabled | string | 'true' to enable memory, 'false' to disable. Must be enabled before using monitors or strategies. (set only) |
| preferred_tlds | string | Comma-separated TLDs, e.g. 'com,net,io' (set only) |
| exclude_hyphens | string | 'true' or 'false' (set only) |
| exclude_numbers |
Return standard registration and renewal price for a TLD. Related: available.
| Argument | Type | Description |
|---|---|---|
| tld* | string | TLD to query, comma-separated for multiple (e.g., 'com', 'com,io,ai') |
{
"type": "object",
"required": [
"tld"
],
"properties": {
"tld": {
"type": "string",
"description": "TLD to query, comma-separated for multiple (e.g., 'com', 'com,io,ai')"
}
},
"additionalProperties": false
}Look up ICANN-accredited registrars by name, alias, or IANA ID. Returns accreditation status, RDAP endpoint, business contact details, a drop-catch flag, and the parent entity for reseller shells. Around 60 percent of accredited registrars are shells operated by a handful of parents, so parent_id is what tells you who actually runs a name. Related: whois, available, expired.
| Argument | Type | Description |
|---|---|---|
| page | string | Page number for pagination |
| query* | string | Registrar name, alias, or IANA ID (e.g. 'namecheap', 'gname', '1441') |
{
"type": "object",
"required": [
"query"
],
"properties": {
"page": {
"type": "string",
"description": "Page number for pagination"
},
"query": {
"type": "string",
"description": "Registrar name, alias, or IANA ID (e.g. 'namecheap', 'gname', '1441')"
}
},
"additionalProperties": false
}Store user-authored strategy text, execution timestamps, and the most recent result in encrypted per-user storage. This tool does not provide presets, define opportunities, choose domains, or execute a workflow. Requires a registered account with memory enabled.
| Argument | Type | Description |
|---|---|---|
| id | string | Saved strategy ID for update or delete. |
| name | string | Optional user-defined name for set. |
| action | string | get, set, update, or delete. Defaults to get. |
| result | string | Latest user- or host-supplied result summary for update. |
| strategy | string | User-authored text, maximum 500 characters, for set. |
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Saved strategy ID for update or delete."
},
"name": {
"type": "string",
"description": "Optional user-defined name for set."
},
"action": {
"enum": [
"get",
"set",
"update",
"delete"
],
"type": "string",
"description": "get, set, update, or delete. Defaults to get."
},
"result": {
"type": "string",
"description": "Latest user- or host-supplied result summary for update."
},
"strategy": {
"type": "string",
"description": "User-authored text, maximum 500 characters, for set."
}
},
"additionalProperties": false
}Check how a prefix is registered across core TLDs, returning per-TLD status and aggregate counts. Related: bulk_tld, available.
| Argument | Type | Description |
|---|---|---|
| prefix* | string | Keyword without extension (e.g., 'openai') |
{
"type": "object",
"required": [
"prefix"
],
"properties": {
"prefix": {
"type": "string",
"description": "Keyword without extension (e.g., 'openai')"
}
},
"additionalProperties": false
}Rank TLDs by registration volume and related metrics over a chosen period. Related: tld_trends.
| Argument | Type | Description |
|---|---|---|
| type | string | Ranking type: 'newly' for today's new registrations, 'active' for total active domains |
| limit | string | Number of results (default 20, max 100) |
{
"type": "object",
"properties": {
"type": {
"enum": [
"newly",
"active"
],
"type": "string",
"description": "Ranking type: 'newly' for today's new registrations, 'active' for total active domains"
},
"limit": {
"type": "string",
"description": "Number of results (default 20, max 100)"
}
},
"additionalProperties": false
}Return registration trend data for a TLD over time, or compare multiple TLDs, in active-total or newly-registered mode. Related: tld_rank, keywords_trends.
| Argument | Type | Description |
|---|---|---|
| tld | string | Single TLD for 'data' mode, gTLDs only (e.g., 'com', 'xyz'). Country-code TLDs are not covered and return an error. |
| days | string | Time horizon |
| tlds | string | Comma-separated TLDs for 'compare' mode (max 5, gTLDs only, e.g. 'xyz,online,shop,store'). Country-code TLDs such as io, ai, co are not covered by this dataset. |
| type | string | 'newly' for daily new registrations, 'active' for total active domains |
| action | string | 'data' for single TLD deep-dive, 'compare' for multi-TLD comparison |
{
"type": "object",
"properties": {
"tld": {
"type": "string",
"description": "Single TLD for 'data' mode, gTLDs only (e.g., 'com', 'xyz'). Country-code TLDs are not covered and return an error."
},
"days": {
"enum": [
"7",
"14",
"30",
"60",
"90",
"180"
],
"type": "string",
"description": "Time horizon"
},
"tlds": {
"type": "string",
"description": "Comma-separated TLDs for 'compare' mode (max 5, gTLDs only, e.g. 'xyz,online,shop,store'). Country-code TLDs such as io, ai, co are not covered by this dataset."
},
"type": {
"enum": [
"active",
"newly"
],
"type": "string",
"description": "'newly' for daily new registrations, 'active' for total active domains"
},
"action": {
"enum": [
"data",
"compare"
],
"type": "string",
"description": "'data' for single TLD deep-dive, 'compare' for multi-TLD comparison"
}
},
"additionalProperties": false
}Generate typosquat permutations for a domain and check which variants are registered. Produces omission, transposition, keyboard-adjacent replacement, insertion, repetition, hyphenation, vowel-swap, homoglyph, plural/singular, and TLD-swap variants. Each result includes the variant domain, mutation type, prefix TLD count (how many TLDs the prefix is registered under), and registration date if known. Use for brand protection, phishing detection, and defensive registration planning. Related tools: nrds, ns_reverse, dns, whois.
| Argument | Type | Description |
|---|---|---|
| domain* | string | Domain to scan (e.g. example.com) |
{
"type": "object",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"description": "Domain to scan (e.g. example.com)"
}
},
"additionalProperties": false
}Search short .ai, .io, .si, .sh, .so and .md names that were unregistered at the latest data update: 3-letter names and 4-letter names, including CVCV, VCVC, and CCVV shapes (C = consonant, V = vowel), with how many other TLDs each name is registered in. Without a registered account, only .ai names are shown and filters are not available. Not re-checked at query time; confirm with available or bulk_available before registering. Related: available, bulk_available.
| Argument | Type | Description |
|---|---|---|
| tld | string | Extension: ai, io, si, sh, so or md. Comma-separate to combine (e.g., 'io,sh'); omit for all. |
| page | integer | Page number, 10 results per page. Page depth depends on your plan. |
| sort | string | Sort order |
| type | string | Pattern type filter |
| exclude | string | Exclude characters (comma-separated) |
| keyword | string | Filter by characters in prefix |
| no_hyphen | string | Exclude hyphens |
| no_number | string | Exclude numbers |
Return the current account tier, per-tool-group usage, rate limits, and stateful Monitor and Strategy quotas.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Return WHOIS/RDAP registration data for a domain: registrar, dates, status, and nameservers. Related: dns.
| Argument | Type | Description |
|---|---|---|
| domain* | string | Bare domain name such as example.com. No protocol (https://), path, or port; internationalized names in punycode (xn--...). |
{
"type": "object",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"description": "Bare domain name such as example.com. No protocol (https://), path, or port; internationalized names in punycode (xn--...)."
}
},
"additionalProperties": false
}| age_range |
| string |
| Domain age filter in years |
| no_hyphen | string | Exclude hyphenated domains |
| no_number | string | Exclude domains containing numbers |
| tld_count_max | string | Maximum cross-TLD registration count for the name. Integer 0-10000. See tld_count_min. |
| tld_count_min | string | Minimum cross-TLD registration count for the name. Integer 0-10000. Combine with tld_count_max for a range; set both equal for an exact count. Matches the prefix_tld_count field in results. |
{
"type": "object",
"properties": {
"tld": {
"type": "string",
"description": "Filter by TLD (e.g., 'com', 'net', 'org')"
},
"page": {
"type": "string",
"description": "Page number for pagination"
},
"sort": {
"enum": [
"age_desc",
"age_asc",
"length_asc",
"length_desc",
"reg_date_asc",
"reg_date_desc",
"alpha",
"tld_counter_asc",
"tld_counter_desc"
],
"type": "string",
"description": "Sort order"
},
"type": {
"enum": [
"all_alpha",
"all_number"
],
"type": "string",
"description": "Character set filter"
},
"length": {
"enum": [
"<5",
"5-10",
"10-15",
"15+"
],
"type": "string",
"description": "Domain name length filter"
},
"exclude": {
"type": "string",
"description": "Negative keywords to exclude"
},
"keyword": {
"type": "string",
"description": "Search term (min 2 chars). Substring matching applies at every length, including 2-character terms."
},
"has_sale": {
"enum": [
"true",
"false"
],
"type": "string",
"description": "Filter to domains listed for sale by their owner"
},
"position": {
"enum": [
"start",
"end",
"middle",
"all"
],
"type": "string",
"description": "Keyword placement in domain name. Default is 'all' (substring match)."
},
"age_range": {
"enum": [
"5-10",
"10-15",
"15-20",
"20+",
"5-10,10-15",
"10-15,15-20",
"15-20,20+"
],
"type": "string",
"description": "Domain age filter in years"
},
"no_hyphen": {
"type": "string",
"description": "Exclude hyphenated domains"
},
"no_number": {
"type": "string",
"description": "Exclude domains containing numbers"
},
"tld_count_max": {
"type": "string",
"description": "Maximum cross-TLD registration count for the name. Integer 0-10000. See tld_count_min."
},
"tld_count_min": {
"type": "string",
"description": "Minimum cross-TLD registration count for the name. Integer 0-10000. Combine with tld_count_max for a range; set both equal for an exact count. Matches the prefix_tld_count field in results."
}
},
"additionalProperties": false
}| position |
| string |
| Keyword placement in domain name. Default is 'all' (substring match). |
| age_range | string | Historical age before deletion |
| no_hyphen | string | Exclude hyphenated domains |
| no_number | string | Exclude domains containing numbers |
| tld_count_max | string | Maximum cross-TLD registration count for the name. Integer 0-10000. See tld_count_min. |
| tld_count_min | string | Minimum cross-TLD registration count for the name. Integer 0-10000. Combine with tld_count_max for a range; set both equal for an exact count. Matches the prefix_tld_count field in results. |
{
"type": "object",
"required": [
"keyword"
],
"properties": {
"tld": {
"type": "string",
"description": "Filter by TLD (e.g., 'com', 'net', 'org')"
},
"hold": {
"enum": [
"no_hold",
"has_hold"
],
"type": "string",
"description": "Filter by registry hold flag (has_hold or no_hold). Neither value confirms current availability."
},
"page": {
"type": "string",
"description": "Page number for pagination"
},
"sort": {
"enum": [
"age_desc",
"age_asc",
"length_asc",
"length_desc",
"tld_counter_asc",
"tld_counter_desc"
],
"type": "string",
"description": "Sort order"
},
"type": {
"enum": [
"all_alpha",
"all_number"
],
"type": "string",
"description": "Character set filter"
},
"length": {
"enum": [
"<5",
"5-10",
"10-15",
"15+"
],
"type": "string",
"description": "Domain name length filter"
},
"exclude": {
"type": "string",
"description": "Negative keywords to exclude"
},
"keyword": {
"type": "string",
"description": "Search term (min 2 chars). Substring matching applies at every length, including 2-character terms."
},
"position": {
"enum": [
"start",
"end",
"middle",
"all"
],
"type": "string",
"description": "Keyword placement in domain name. Default is 'all' (substring match)."
},
"age_range": {
"enum": [
"0-5",
"5-10",
"10-20",
"20+",
"10-20,20+"
],
"type": "string",
"description": "Historical age before deletion"
},
"no_hyphen": {
"type": "string",
"description": "Exclude hyphenated domains"
},
"no_number": {
"type": "string",
"description": "Exclude domains containing numbers"
},
"tld_count_max": {
"type": "string",
"description": "Maximum cross-TLD registration count for the name. Integer 0-10000. See tld_count_min."
},
"tld_count_min": {
"type": "string",
"description": "Minimum cross-TLD registration count for the name. Integer 0-10000. Combine with tld_count_max for a range; set both equal for an exact count. Matches the prefix_tld_count field in results."
}
},
"additionalProperties": false
}| string |
| Search term (min 2 chars). Substring matching applies at every length, including 2-character terms. |
| position | string | Keyword placement in domain name. Default is 'all' (substring match). |
| age_range | string | Historical age of the domain |
| no_hyphen | string | Exclude hyphenated domains |
| no_number | string | Exclude domains containing numbers |
| tld_count_max | string | Maximum cross-TLD registration count for the name. Integer 0-10000. See tld_count_min. |
| tld_count_min | string | Minimum cross-TLD registration count for the name. Integer 0-10000. Combine with tld_count_max for a range; set both equal for an exact count. Matches the prefix_tld_count field in results. |
{
"type": "object",
"properties": {
"tld": {
"type": "string",
"description": "Filter by TLD (e.g., 'com', 'net', 'org')"
},
"hold": {
"enum": [
"no_hold",
"has_hold"
],
"type": "string",
"description": "Registry hold status"
},
"page": {
"type": "string",
"description": "Page number for pagination"
},
"sort": {
"enum": [
"age_desc",
"age_asc",
"length_asc",
"length_desc"
],
"type": "string",
"description": "Sort order"
},
"type": {
"enum": [
"all_alpha",
"all_number"
],
"type": "string",
"description": "Character set filter"
},
"length": {
"enum": [
"<5",
"5-10",
"10-15",
"15+"
],
"type": "string",
"description": "Domain name length filter"
},
"status": {
"enum": [
"pending_delete",
"redemption",
"expired"
],
"type": "string",
"description": "expired = in registrar auction, redemption = owner can reclaim, pending_delete = drops in 1-5 days"
},
"exclude": {
"type": "string",
"description": "Negative keywords to exclude"
},
"keyword": {
"type": "string",
"description": "Search term (min 2 chars). Substring matching applies at every length, including 2-character terms."
},
"position": {
"enum": [
"start",
"end",
"middle",
"all"
],
"type": "string",
"description": "Keyword placement in domain name. Default is 'all' (substring match)."
},
"age_range": {
"enum": [
"0-5",
"5-10",
"10-20",
"20+",
"5-10,10-15",
"10-20,20+"
],
"type": "string",
"description": "Historical age of the domain"
},
"no_hyphen": {
"type": "string",
"description": "Exclude hyphenated domains"
},
"no_number": {
"type": "string",
"description": "Exclude domains containing numbers"
},
"tld_count_max": {
"type": "string",
"description": "Maximum cross-TLD registration count for the name. Integer 0-10000. See tld_count_min."
},
"tld_count_min": {
"type": "string",
"description": "Minimum cross-TLD registration count for the name. Integer 0-10000. Combine with tld_count_max for a range; set both equal for an exact count. Matches the prefix_tld_count field in results."
}
},
"additionalProperties": false
}| position |
| string |
| Keyword placement in domain name. Default is 'all' (substring match). |
| tld_type | string | Limit results to country-code TLDs ('cctld': suffixes ending in a two-letter code, including second-level ones such as 'com.br') or generic TLDs ('gtld': all other suffixes; internationalized country codes such as 'xn--p1ai' fall here). Omit to include both. |
| no_hyphen | string | Exclude hyphenated domains (true/false) |
| no_number | string | Exclude domains containing numbers (true/false) |
| tld_count_max | string | Maximum cross-TLD registration count for the name. Integer 0-10000. See tld_count_min. |
| tld_count_min | string | Minimum cross-TLD registration count for the name. Integer 0-10000. Combine with tld_count_max for a range; set both equal for an exact count. Matches the prefix_tld_count field in results. |
{
"type": "object",
"properties": {
"tld": {
"type": "string",
"description": "Filter by TLD, e.g. 'com', 'de', or a second-level suffix such as 'com.br'. A two-letter country code also covers its second-level suffixes. Provide WITHOUT keyword to enter TLD browse mode (requires a registered account)"
},
"page": {
"type": "string",
"description": "Page number for pagination"
},
"sort": {
"enum": [
"length_asc",
"length_desc",
"alpha",
"tld_counter_asc",
"tld_counter_desc"
],
"type": "string",
"description": "Sort order"
},
"type": {
"enum": [
"all_alpha",
"all_number"
],
"type": "string",
"description": "Character set filter"
},
"length": {
"enum": [
"<5",
"5-10",
"10-15",
"15+"
],
"type": "string",
"description": "Domain name length filter"
},
"status": {
"enum": [
"forsale"
],
"type": "string",
"description": "Filter by status: 'forsale' for domains listed for sale"
},
"exclude": {
"type": "string",
"description": "Negative keywords to exclude"
},
"keyword": {
"type": "string",
"description": "Brand or industry term (min 2 chars). Substring matching applies at every length, including 2-character terms."
},
"position": {
"enum": [
"start",
"end",
"middle",
"all"
],
"type": "string",
"description": "Keyword placement in domain name. Default is 'all' (substring match)."
},
"tld_type": {
"enum": [
"gtld",
"cctld"
],
"type": "string",
"description": "Limit results to country-code TLDs ('cctld': suffixes ending in a two-letter code, including second-level ones such as 'com.br') or generic TLDs ('gtld': all other suffixes; internationalized country codes such as 'xn--p1ai' fall here). Omit to include both."
},
"no_hyphen": {
"type": "string",
"description": "Exclude hyphenated domains (true/false)"
},
"no_number": {
"type": "string",
"description": "Exclude domains containing numbers (true/false)"
},
"tld_count_max": {
"type": "string",
"description": "Maximum cross-TLD registration count for the name. Integer 0-10000. See tld_count_min."
},
"tld_count_min": {
"type": "string",
"description": "Minimum cross-TLD registration count for the name. Integer 0-10000. Combine with tld_count_max for a range; set both equal for an exact count. Matches the prefix_tld_count field in results."
}
},
"additionalProperties": false
}| WHOIS result, backward compatibility (update only) |
| action | string | 'get', 'set', 'update', 'delete', or 'history'. Defaults to 'get' if not specified. |
| domain | string | Domain to monitor (set; also optional on history to filter to one domain) |
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Monitor task ID (update and delete)"
},
"dns": {
"type": "string",
"description": "DNS result, backward compatibility (update only)"
},
"days": {
"type": "string",
"description": "history only: how far back to look, in days. Default 30, maximum 365."
},
"note": {
"type": "string",
"description": "What to watch for: the user's intent in natural language (set only)"
},
"page": {
"type": "string",
"description": "Page content summary from web_fetch (update only)"
},
"tools": {
"type": "string",
"description": "Comma-separated: whois, dns, web_fetch. Default: whois,dns (set only)"
},
"whois": {
"type": "string",
"description": "WHOIS result, backward compatibility (update only)"
},
"action": {
"type": "string",
"description": "'get', 'set', 'update', 'delete', or 'history'. Defaults to 'get' if not specified."
},
"domain": {
"type": "string",
"description": "Domain to monitor (set; also optional on history to filter to one domain)"
}
},
"additionalProperties": false
}| exclude |
| string |
| Negative keywords to exclude |
| keyword | string | Search term (min 2 chars). Substring matching applies at every length, including 2-character terms. |
| has_sale | string | Filter to domains listed for sale |
| position | string | Keyword placement in domain name. Default is 'all' (substring match). |
| no_hyphen | string | Exclude hyphenated domains |
| no_number | string | Exclude domains containing numbers |
| days_range | string | Registration recency |
| tld_count_max | string | Maximum cross-TLD registration count for the name. Integer 0-10000. See tld_count_min. |
| tld_count_min | string | Minimum cross-TLD registration count for the name. Integer 0-10000. Combine with tld_count_max for a range; set both equal for an exact count. Matches the prefix_tld_count field in results. Domains first seen only hours ago (live rows) carry a count of 1. |
{
"type": "object",
"properties": {
"tld": {
"type": "string",
"description": "Filter by TLD, e.g. 'com', 'ai', or a second-level suffix such as 'com.br'. A two-letter country code also covers its second-level registrations ('br' includes 'com.br')."
},
"page": {
"type": "string",
"description": "Page number for pagination"
},
"sort": {
"enum": [
"reg_date_desc",
"reg_date_asc",
"length_asc",
"length_desc",
"period_asc",
"period_desc",
"tld_counter_asc",
"tld_counter_desc",
"alpha"
],
"type": "string",
"description": "Sort order"
},
"type": {
"enum": [
"all_alpha",
"all_number"
],
"type": "string",
"description": "Character set filter"
},
"length": {
"enum": [
"<5",
"5-10",
"10-15",
"15+"
],
"type": "string",
"description": "Domain name length filter"
},
"period": {
"enum": [
"1",
"2-5",
"6+"
],
"type": "string",
"description": "Registration term length in years"
},
"exclude": {
"type": "string",
"description": "Negative keywords to exclude"
},
"keyword": {
"type": "string",
"description": "Search term (min 2 chars). Substring matching applies at every length, including 2-character terms."
},
"has_sale": {
"enum": [
"true",
"false"
],
"type": "string",
"description": "Filter to domains listed for sale"
},
"position": {
"enum": [
"start",
"end",
"middle",
"all"
],
"type": "string",
"description": "Keyword placement in domain name. Default is 'all' (substring match)."
},
"no_hyphen": {
"type": "string",
"description": "Exclude hyphenated domains"
},
"no_number": {
"type": "string",
"description": "Exclude domains containing numbers"
},
"days_range": {
"enum": [
"0-10",
"10-20",
"20+"
],
"type": "string",
"description": "Registration recency"
},
"tld_count_max": {
"type": "string",
"description": "Maximum cross-TLD registration count for the name. Integer 0-10000. See tld_count_min."
},
"tld_count_min": {
"type": "string",
"description": "Minimum cross-TLD registration count for the name. Integer 0-10000. Combine with tld_count_max for a range; set both equal for an exact count. Matches the prefix_tld_count field in results. Domains first seen only hours ago (live rows) carry a count of 1."
}
},
"additionalProperties": false
}| string |
| Exclude numbers |
| pure_alpha | string | Letters only (strictest quality filter) |
| pure_digit | string | Numbers only |
{
"type": "object",
"required": [
"ns"
],
"properties": {
"ns": {
"type": "string",
"description": "Target nameserver hostname (e.g., 'ns1.example.com'). Comma-separate up to 10 to match only domains that use all of them (intersection, unlike tld where commas mean any); multiple nameservers are available on higher plans."
},
"tld": {
"type": "string",
"description": "Filter by TLD (e.g., 'com')"
},
"page": {
"type": "string",
"description": "Page number for pagination"
},
"sort": {
"enum": [
"length_asc",
"length_desc",
"alpha_asc",
"alpha_desc"
],
"type": "string",
"description": "Sort order"
},
"keyword": {
"type": "string",
"description": "Substring filter within domain names"
},
"max_len": {
"type": "string",
"description": "Maximum domain name length (integer)"
},
"min_len": {
"type": "string",
"description": "Minimum domain name length (integer)"
},
"no_hyphen": {
"type": "string",
"description": "Exclude hyphens"
},
"no_number": {
"type": "string",
"description": "Exclude numbers"
},
"pure_alpha": {
"enum": [
"true",
"false"
],
"type": "string",
"description": "Letters only (strictest quality filter)"
},
"pure_digit": {
"enum": [
"true",
"false"
],
"type": "string",
"description": "Numbers only"
}
},
"additionalProperties": false
}| string |
| 'true' or 'false' (set only) |
{
"type": "object",
"properties": {
"style": {
"type": "string",
"description": "'short', 'brandable', 'keyword' (set only)"
},
"action": {
"type": "string",
"description": "'get', 'set', or 'delete'. Defaults to 'get' if not specified."
},
"budget": {
"type": "string",
"description": "'low', 'medium', 'high' (set only)"
},
"industry": {
"type": "string",
"description": "Industry type (set only)"
},
"memory_enabled": {
"type": "string",
"description": "'true' to enable memory, 'false' to disable. Must be enabled before using monitors or strategies. (set only)"
},
"preferred_tlds": {
"type": "string",
"description": "Comma-separated TLDs, e.g. 'com,net,io' (set only)"
},
"exclude_hyphens": {
"type": "string",
"description": "'true' or 'false' (set only)"
},
"exclude_numbers": {
"type": "string",
"description": "'true' or 'false' (set only)"
}
},
"additionalProperties": false
}| tld_count | string | Filter by cross-TLD registration count |
{
"type": "object",
"properties": {
"tld": {
"type": "string",
"description": "Extension: ai, io, si, sh, so or md. Comma-separate to combine (e.g., 'io,sh'); omit for all."
},
"page": {
"type": "integer",
"description": "Page number, 10 results per page. Page depth depends on your plan."
},
"sort": {
"enum": [
"length_asc",
"length_desc",
"count_asc",
"count_desc"
],
"type": "string",
"description": "Sort order"
},
"type": {
"enum": [
"3letter",
"CVCV",
"VCVC",
"CCVV"
],
"type": "string",
"description": "Pattern type filter"
},
"exclude": {
"type": "string",
"description": "Exclude characters (comma-separated)"
},
"keyword": {
"type": "string",
"description": "Filter by characters in prefix"
},
"no_hyphen": {
"enum": [
"true",
"false"
],
"type": "string",
"description": "Exclude hyphens"
},
"no_number": {
"enum": [
"true",
"false"
],
"type": "string",
"description": "Exclude numbers"
},
"tld_count": {
"enum": [
"0-10",
"10-50",
"50-100",
"100+"
],
"type": "string",
"description": "Filter by cross-TLD registration count"
}
},
"additionalProperties": false
}