Skip to main content
Glama

Expiring Domains Search

expired
Read-onlyIdempotent

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.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
tldNoFilter by TLD (e.g., 'com', 'net', 'org')
holdNoRegistry hold status
pageNoPage number for pagination
sortNoSort order
typeNoCharacter set filter
lengthNoDomain name length filter
statusNoexpired = in registrar auction, redemption = owner can reclaim, pending_delete = drops in 1-5 days
excludeNoNegative keywords to exclude
keywordNoSearch term (min 2 chars). Substring matching applies at every length, including 2-character terms.
positionNoKeyword placement in domain name. Default is 'all' (substring match).
age_rangeNoHistorical age of the domain
no_hyphenNoExclude hyphenated domains
no_numberNoExclude domains containing numbers
tld_count_maxNoMaximum cross-TLD registration count for the name. Integer 0-10000. See tld_count_min.
tld_count_minNoMinimum 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.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
dataNo
pageNo
errorNoError message when success is false
totalNoNumber of results on this page
successYes
max_pageNo
total_foundNoTotal matching results across all pages

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / keyword / description
      Previous value: -"Search term (min 2 chars). IMPORTANT: 2-character keywords match the START of the name only; 'contain' and 'end' are unavailable at this length and total_found will exclude mid-name matches. Use 3+ characters for true substring matching."New value: +"Search term (min 2 chars). Substring matching applies at every length, including 2-character terms."
    • changedInput schema / properties / position / description
      Previous value: -"Keyword placement in domain name. Default is 'all' (substring match). Ignored when keyword is 2 characters (always start)."New value: +"Keyword placement in domain name. Default is 'all' (substring match)."
  2. Changed2 schema fields changed
    • addedInput schema / properties / tld_count_max
      Added value: +{
      +  "description": "Maximum cross-TLD registration count for the name. Integer 0-10000. See tld_count_min.",
      +  "type": "string"
      +}
    • addedInput schema / properties / tld_count_min
      Added value: +{
      +  "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.",
      +  "type": "string"
      +}
  3. Changed2 schema fields changed
    • changedInput schema / properties / position / description
      Previous value: -"Keyword placement in domain name. Default is 'contain'. Ignored when keyword is 2 characters (always start)."New value: +"Keyword placement in domain name. Default is 'all' (substring match). Ignored when keyword is 2 characters (always start)."
    • changedInput schema / properties / position / enum
      Previous value: -[
      -  "start",
      -  "end",
      -  "middle",
      -  "contain"
      -]New value: +[
      +  "start",
      +  "end",
      +  "middle",
      +  "all"
      +]
  4. Changed2 schema fields changed
    • changedInput schema / properties / keyword / description
      Previous value: -"Search term (min 2 chars)"New value: +"Search term (min 2 chars). IMPORTANT: 2-character keywords match the START of the name only; 'contain' and 'end' are unavailable at this length and total_found will exclude mid-name matches. Use 3+ characters for true substring matching."
    • changedInput schema / properties / position / description
      Previous value: -"Keyword placement in domain name"New value: +"Keyword placement in domain name. Default is 'contain'. Ignored when keyword is 2 characters (always start)."
  5. Added

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and idempotentHint=true, so the safety profile is known. The description adds valuable behavioral context beyond annotations: registrars may renew a domain after expiry, the data is gathered through multiple channels, and some statuses may not match live WHOIS. This is a meaningful, honest disclosure about data freshness and reliability that an agent needs when interpreting results.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded: the first sentence states the core purpose, the second clarifies the domain state and acquisition window, and the note provides an important reliability caveat. The 'Related' line aids tool selection without bloat. Every sentence earns its place, and there is no redundant restating of schema or annotations.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is well-supported by structured data: 15 parameters all described in the schema, 7 enums, an output schema, and safety annotations. The description adds the missing behavioral nuance about data staleness and renewal risk, which is essential for interpreting search results. An agent has everything it needs to select and invoke this tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the input schema already documents every parameter thoroughly, including enums and meaning. The description briefly lists the filter dimensions (lifecycle status, TLD, age range, length, character set), which maps to the schema but adds no new parameter-level meaning. Baseline 3 is appropriate because the schema carries the full burden and the description does not need to compensate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action and scope: 'Search domains in the deletion cycle' and enumerates the exact lifecycle statuses covered: expired, in redemption, or pending delete. It also distinguishes this from sibling tools by noting these domains are 'still held by the current registrant,' which separates it from already-deleted domains. The purpose is unambiguous and clearly differentiated from nearby tools like deleted and monitor.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context for when this tool is appropriate: searching domains in the deletion cycle with time-sensitive acquisition windows. It names related tools ('monitor, deleted, whois') and the 'still held by the current registrant' clause implies when not to use it, but it does not explicitly explain when to choose expired over each alternative. This is clear context with no explicit exclusions, so it falls short of a full 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.