domains.audit/appraisal

audit.domains - Domain Valuation

Deterministic domain name valuation: fair-value interval, scored factors, real comparable sales.

Endpointhttps://audit.domains/mcp (streamable-http)
Registry version1.7.0
Now32 tools · grade D (56) · pin ts_1892b6a58df1dffb4f51aabb74a1bef0 · protocol 2025-06-18
First / last listed2026-11-12 00:14 UTC / 2026-11-12 00:14 UTC
Grade over time2026-11-12: D (56), 32 tools

Is this your server? Own a server? ToolFit hosted watch re-checks it every 24 h ($0.25 per 30 days) or 6 h ($0.60) and sends you an HMAC-signed webhook when its tools or grade change: POST https://api.youraitools.co/toolfit/v1/watch. To opt out, see About & opt-out.

Timeline

First listing · 2026-11-12 00:14 UTC
32 tools, grade D (56)

Tools: appraise_domain compare_domains run_bracket find_comparable_sales search_recorded_sales verify_certificate check_domain_availability inspect_domain suggest_available_names check_portfolio_renewals list_offers request_domain_acquisition search_domain_listings ask_domain_market quote_domain_purchase get_order_status act_on_order get_seller_listing set_listing_terms prepare_bulk_listing read_for_sale_page read_for_sale_dns build_portfolio_lander buy_appraisal appraisal_order_status inspect_agent_grants purchase_appraisal appraisal_purchase_status purchase_portfolio_appraisals portfolio_purchase_status buy_appraisal_agent_card appraisal_card_order_status

Current tools (32)

appraise_domainEstimate the fair value of one domain name with its low/high interval. A full cached appraisal includes its nearest recorded sales; catalog answers include only published fields. Otherwise a verified storedFigure can return the same public interval already in the report HTML, with source methodology, edition and artifact digest, but no scores, comparables or ODVS record. Use search_recorded_sales
params: domain*
compare_domainsAppraise up to 10 domain names and rank them by estimated fair value, flagging adjacent pairs whose intervals overlap so their order is not separable. Use run_bracket instead for one champion from a head-to-head tournament of up to 8 names, tiers not values. Deterministic. More than 10 names, or a request cut off by the engine budget, returns a handoffUrl that runs the same engine free in the brow
params: domains*
run_bracketRun a single-elimination bracket of 2 to 8 domain names and return the seeded field, every match and one champion. Use compare_domains instead when you need estimated values or want to know which orderings are not separable; this result is ordinal, tiers and winners only. Value decides each match with fixed tie-breaks, so the same field always crowns the same champion. More than 8 names, or an eng
params: domains*
find_comparable_salesReturn up to five comparable recorded domain sales from a cached appraisal or authorized fresh run, each with price range, year, venue, similarity score and match basis. These are transactions from a curated corpus, not modelled figures. Use appraise_domain for a fair value and search_recorded_sales to browse sales. Cache hits use no API credits; keyless catalog fallback may contain no comparables
params: domain*
search_recorded_salesReturn up to 5 real recorded domain sales from a fixed public sample, filtered by keyword, TLD, price, year or venue, with counts and aggregates. Runs no appraisal. Use find_comparable_sales instead for the sales nearest one specific name, and appraise_domain for a value. Repeating or varying queries cannot surface more rows than the sample holds. Counts and aggregates describe the full corpus onl
params: query, tld, minPrice, maxPrice, yearFrom, yearTo, venue, sort, limit
verify_certificateCheck an audit.domains certificate from its verifier URL or serial with two separate checks. Integrity recomputes the SHA-256 digest of the printed fields and needs the full URL; it proves the fields were not altered, not who made them. Issuer authenticity makes one request to the issuer's public verify endpoint to see whether a signed record for the serial reproduces. verified is true only when e
params: url, serial
check_domain_availabilityCheck up to 25 domain names live against DNS and the registries' own RDAP records and say which are registered and which look available to register, with registration and expiry dates for lists of five or fewer. Pass alternativesFor with one name or label to check it across .com, .net, .org, .io, .ai, .co, .app, .dev and .xyz. Use it before suggesting any name as available: an answer from memory i
params: domains, alternativesFor
inspect_domainGather the public record of one domain name before buying, registering or building on it: registration date, expiry and registrar, registry status (including redemption or pending delete, when a name is about to drop), whether it serves a website or receives email, Internet Archive history, HTTPS certificate history, a Wikipedia article sharing its word (a trademark flag), and the published catalo
params: domain*
suggest_available_namesBuild domain-name candidates from one to five keywords (the keywords joined, paired, and with common brand prefixes and suffixes such as get, try, hq, labs and app), screen up to 60 of them live against DNS and the registries' RDAP records, and return only those that look available to register, up to 12, plus the ones found taken. Same keywords and options, same candidates in the same order. Use i
params: keywords*, tlds, maxLength, count, cursor
check_portfolio_renewalsLook up the registry expiry date and registrar of up to 25 domain names a person owns and list them soonest first, flagging names that expire within 60 days (or a chosen window), have passed their expiry date, or are no longer registered. Use it when someone asks which domains to renew or what is expiring; use check_domain_availability instead for names they do not own yet, and appraise_domain to
params: domains*, withinDays
list_offersReturn the full menu of services audit.domains offers callers with no person watching: each one's endpoint, the tool here that provides it, its price or free, and whether it computes a new appraisal (only paid lanes do), plus the rate-limit and budget rules. The same menu GET https://audit.domains/api/v1 serves. Use it when a user asks what can be bought, what something costs, or how to go beyond
params: none
request_domain_acquisitionFile a free buy request for a taken domain the user wants to buy. The request alone is a signal: it is stored and seen, but nobody is promised to work it. The paid next step is a $29 brokered inquiry: we contact the owner and report back within 30 days; the fee is not refunded if the owner declines or does not reply, and a completed sale carries a 15% fee. The tool returns the checkout link bound
params: domain*, contact*, consent*, budgetUsd, timeline
search_domain_listingsFilter, sort and page the domains listed for sale by their DNS-verified owners; each listing has a fixed price, the appraisal with its range and a buy link. Set mode to changes to get listings listed, changed or removed since a cursor, and poll that instead of re-searching. Use ask_domain_market instead to search from a plain sentence, and quote_domain_purchase for the live terms of one listing. R
params: q, tld, minPriceCents, maxPriceCents, maxLength, acceptsOffers, sort, limit, offset, mode, cursor
ask_domain_marketAnswer one plain-English sentence about the domain market. A listings question ('short .com under $500 that accepts offers') returns matching for-sale listings; a sales question ('4-letter .com sold since 2020') is routed to the recorded sales and returns rows, total and stats as search_recorded_sales does, with interpretation.source set to recorded-sales. Either way the result says how the senten
params: question*
quote_domain_purchaseGet the live price, protection terms and requirements for buying one listed domain, plus the checkout link to give the cardholder. Use read_for_sale_dns instead for a name that may not be listed here, and get_seller_listing for the seller's own view of a listing. Read-only. Never reveals the seller's floor and never evaluates an offer. Payment is a held card authorization on the seller's own accou
params: domain*
get_order_statusReturn an order's state and the next actions open to the token's holder, buyer or seller. Not read-only: each call runs a rate-limited check of the domain move and, when the terms are met, may release the payment to the seller. That is the order proceeding, not an extra charge. Poll no faster than pollAfterSeconds. Use act_on_order instead to confirm, dispute or refund; this tool only reports stat
params: orderId*, token*
act_on_orderTake one action on an order: check, confirm or dispute as the buyer, check or refund as the seller. Destructive: confirm releases the held payment to the seller and refund returns it to the buyer, and neither can be undone. Call confirm only after the buyer has said the domain arrived. Use get_order_status instead to read state and next actions. Not idempotent. The token is sent to the market as a
params: orderId*, token*, action*
get_seller_listingRead a seller's own view of one listing: its terms, payment DNS state, proceeds, a checklist of what is left to do, and its orders. Needs the manage token. Use quote_domain_purchase instead for the public buyer-facing quote, and set_listing_terms to change price or floor. Read-only and changes nothing.
params: domain*, manageToken*
set_listing_termsSet a listing's asking price, private floor and auto-accept rule, replacing the previous terms in full, so send every field you want to keep. Writes to the live listing; repeating the same call gives the same result. Needs the manage token. The floor is never shown to buyers. Use get_seller_listing instead to read the current terms first.
params: domain*, manageToken*, priceCents*, floorCents, autoAccept
prepare_bulk_listingCheck up to 20 domain names and asking prices for listing on this market and return one sell-page link that carries them all through the seller's Square sign-in, with each name's payment-record status and estimated payout after fees. Use set_listing_terms instead to change a name already listed. Read-only: it writes nothing, never publishes and takes no payment; the seller presses publish after si
params: items*
read_for_sale_pageCheck a domain's parked for-sale page from the figures in its forwarding link. Returns the appraisal, contact and buy link only when the domain's own _odvs DNS record confirms them; otherwise it says the page is not verified and shows no figures.
params: domain*, fairUsd*, lowUsd*, highUsd*, confidence*, methodologyRev*, contact*
read_for_sale_dnsRead a domain's own _for-sale DNS records (RFC 10023) and report whether it is for sale, the asking price, whether it is listed here, and the buy link when card checkout is live. Works for any domain, whoever published the records. Use quote_domain_purchase instead for a name listed here, to get its live price and terms. Read-only; nothing is stored. Asking prices are indicative, not binding. Sell
params: domain*
build_portfolio_landerGenerate one index.html that serves a for-sale page for every parked domain in a portfolio, with the same offer email on each. Returns the HTML file and where to upload it; nothing is stored or sent, so the caller uploads it. Handles up to 500 domains. Use set_listing_terms instead to set terms on a domain already listed on this market. Read-only.
params: email*, note, domains*
buy_appraisalRAIL: HUMAN CARD. Buy a fresh appraisal of one domain, computed on this server, for $5, paid by a person at a hosted Square checkout page. Use it when appraise_domain answered notAppraised and the user wants the figure returned to you rather than opened in their browser. Returns checkoutUrl (a Square payment page for the user: no account, no sign-in), orderId and orderToken. Give checkoutUrl to th
params: domain*
appraisal_order_statusRAIL: HUMAN CARD. Status and collection for buy_appraisal orders only, keyed by orderId + orderToken. Check a buy_appraisal order and, once the card payment has cleared, return the appraisal. Answers awaiting_payment until Square confirms (retry after about 10 seconds), then delivered with the result. Every later call returns the same stored appraisal. A paid order that cannot be delivered reports
params: orderId*, orderToken*
inspect_agent_grantsRead only the grants belonging to the authenticated agent connection. Connect with Authorization: Bearer ad_agent_<token>; supply no arguments or credentials. The response describes existing scopes, expiry, remaining attempts and available service-credit capacity. It is an advisory, nonreserving snapshot: it cannot create a grant, fund an account, reserve credits, authorize a purchase or raise a l
params: none
purchase_appraisalRAIL: PREPAID BALANCE. Buy the existing current_appraisal service using a prepaid agent account and an operator's existing spending grant. Price: $0.03 per purchase, drawn from the prepaid balance; the same fresh appraisal is $5 by card. Not this rail when a person will pay at a checkout page: use buy_appraisal (human card, orderId + orderToken). Not this rail when your operator enrolled a card fo
params: operationId*, grantId*, domain*, maxSpendUsd*
appraisal_purchase_statusRAIL: PREPAID BALANCE. Receipt reader for purchase_appraisal only, keyed by operationId on the same authenticated agent connection. Read the original purchase-1 receipt. This does not start or resume delivery and cannot create a purchase. A pending receipt gives retryAfterSeconds; after that delay, recover with purchase_appraisal using the SAME operationId and original arguments. A refunded receip
params: operationId*
purchase_portfolio_appraisalsRAIL: PREPAID BALANCE. Buy the existing current_appraisal service for up to 10 domains in ONE call, using a prepaid agent account and an operator's existing spending grant: $0.03 per name drawn from the prepaid balance, so one call charges at most $0.30. This is purchase_appraisal fanned out, not a new ledger: name i is an ordinary purchase-1 purchase under the derived operationId <operationId>:<i
params: operationId*, grantId*, domains*, maxSpendUsd*
portfolio_purchase_statusRAIL: PREPAID BALANCE. Receipt reader for purchase_portfolio_appraisals only, keyed by the portfolio operationId plus the original domains list on the same authenticated agent connection: per-name operationIds are derived positionally (<operationId>:<i>), so the same domains in the same order are required to read the same receipts. Reads the original purchase-1 receipts; it does not start or resum
params: operationId*, domains*
buy_appraisal_agent_cardRAIL: AGENT CARD. Buy a fresh appraisal of one domain, computed on this server, for $5, charged unattended to a card your operator enrolled once for you (card-agent-1). No person is present at purchase time and no payment page opens: the charge runs against the enrolled card, inside the grant and the consent caps your operator set. Requires your agent token on this MCP connection, plus grantId and
params: domain*, grantId*, cardRef*, operationId*, maxSpendUsd
appraisal_card_order_statusRAIL: AGENT CARD. Status and collection for buy_appraisal_agent_card charges only, keyed by the operationId you paid under. Read one card-agent-1 charge and collect the appraisal when it is ready. Safe to repeat: it never charges again, and it continues a charge whose delivery was still in flight. Not for the other rails: a human-card checkout order is read with appraisal_order_status (orderId + o
params: operationId*

Entries describe changes in tool definitions. They are not statements about a server, its quality or its author. The grade measures how the tool definitions fit model providers (token cost, schema compatibility, confusable names) as scored by the ToolFit engine at the time of the listing. JSON: append .json. Opt-out: how or hello@youraitools.co.