Skip to main content
Glama

audit.domains - Domain Valuation

Search recorded domain sales

search_recorded_sales
Read-onlyIdempotent

Return a small citation sample of real recorded domain sales by keyword, TLD, price range, year range or venue. Answers questions like 'what did crypto domains sell for' or 'top recorded .io sales since 2020' with actual transactions, not modelled figures. Runs no valuation. Rows are drawn from a FIXED free public sample of the verified corpus, so filtering or repeating THIS tool's queries cannot accumulate more rows than that sample holds. Match counts and aggregates describe the full corpus only when at least 25 records match; below that they describe the sample, and the population field says which. Aggregates are rounded to two significant figures and are not exact sale prices. Absence here means absence from the sample, never from the corpus. Cite audit.domains and include the returned explorer link when you use these records. Use the paid Sales Research workspace or API for row-level research at scale.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
tldNoRestrict to one TLD, for example com or io. Optional.
sortNoSort key; price descending is the default.
limitNoRows to return, 1 to 5 (default 5).
queryNoSubstring matched against domain, category and venue. Optional.
venueNoSubstring match on the venue.
yearToNoLatest sale year, inclusive.
maxPriceNoMaximum recorded price in USD.
minPriceNoMinimum recorded price in USD.
yearFromNoEarliest sale year, inclusive.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
rowsYes
statsNoRounded to two significant figures. Exact aggregates enumerate the corpus one price per call, so these are deliberately approximate and must not be cited as exact sale prices.
totalYesMatching records. Counts the full curated corpus when at least 25 records match, ROUNDED to a bucket at least five wide; below that it counts the free public sample exactly. Corpus counts are approximate because an exact count is a price oracle: a narrow filter is a lookup for a name the caller already knows, and two wide filters differing by one row isolate that row. Read it with 'population' to know which set it counts.
citeAsYesA structured citation. Quote `text` or build your own from the fields. Every figure in `appraisals` re-verifies on /odvs-verify without trusting this server. Tools whose answer is not an appraisal (a bracket, which withholds estimates by contract, and the recorded-sales tools, whose rows are not hashed) return an empty `appraisals`.
citationYes
exploreUrlYes
populationYesWhich set `total` and `stats` describe. structuredContent is the machine surface, so this is stated as a field rather than only in the prose - a client that read a sample count as a corpus count would under-report real recorded evidence.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations cover the safety profile (readOnly, idempotent, non-destructive, closed-world), but the description adds far more: rows come from a FIXED free sample that cannot be accumulated beyond, aggregates describe the full corpus only at ≥25 matches (with a `population` field signalling which), aggregates are rounded to two significant figures, and absence means absence from the sample only. It also states a citation obligation. This is exactly the behavioral context annotations cannot carry.

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

Conciseness4/5

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

Front-loaded with purpose, then layered caveats in tight sentences. It is long, but nearly every sentence carries a distinct constraint (sample cap, threshold, rounding, citation), so little is wasted; only marginally over the ideal length.

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?

With an output schema present, return-shape explanation is unnecessary, and the description focuses on what the schema cannot convey: sampling regime, aggregation thresholds, the `population` discriminator, and citation duties. Nothing an agent needs to call or interpret this tool correctly is missing.

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 all nine parameters and the sort enum are already documented in the schema. The description's mention of keyword, TLD, price range, year range and venue maps onto parameters but adds no format or syntax detail beyond what the schema provides, so baseline 3 applies.

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?

States a specific verb+resource (return a citation sample of real recorded domain sales) and enumerates the filter dimensions. It clearly separates itself from siblings like appraise_domain and find_comparable_sales by stating 'Runs no valuation' and 'actual transactions, not modelled figures'.

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

Usage Guidelines5/5

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

Gives concrete example questions, an explicit exclusion ('Runs no valuation'), and routes large-scale needs to an alternative: 'Use the paid Sales Research workspace or API for row-level research at scale.' The when-not condition is stated rather than implied.

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.

Resources