Skip to main content
Glama
oborseth

Official Porkbun MCP Server

Search Closeouts

search_closeouts
Read-onlyIdempotent

Find expired-domain closeouts at fixed descending prices and filter by keyword, TLD, name length, age or price; sort by registration date to surface the oldest names first.

Instructions

Search expired-domain closeouts: names that did not sell at auction and are now offered at a fixed price that descends on a schedule. No bidding — the first buyer at the current price takes the name. Filter by keyword, TLD, exact name length, age range and price range; sort by domain, end time, price, revenue, visitors, inbound links or registration_date. Every row carries age and registrationDate, and both are sortable — sort_name=registrationDate with sort_direction=asc gives the OLDEST registrations first, which is the single most requested thing here and is not possible on the website. Note sort_direction=asc on revenue, visitors or inboundLinks lists the domains with no recorded figure first (they come back null); use desc on those. price is the closeout price ALONE. Do not quote a user a total from these results: the binding amount adds the renewal or transfer year and comes from get_closeout. Page with start/limit until start >= totalAvailable.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
tldNoSingle TLD, with or without the leading dot. Omit to search all.
limitNoRows per page, max 500. Default 100.
queryNoKeyword match on the domain name.
startNoPaging offset. Default 0.
age_maxNoMaximum domain age in years.
age_minNoMinimum domain age in years.
price_maxNoDeprecated alias of `price_max_cents`, same unit (integer US cents). Send `price_max_cents` instead.
price_minNoDeprecated alias of `price_min_cents`, same unit (integer US cents). Send `price_min_cents` instead.
sort_nameNoField to sort by.
name_lengthNoExact SLD character count.
sort_directionNoSort direction.
price_max_centsNoMaximum closeout price. Integer US cents: 803 means $8.03, not $803.
price_min_centsNoMinimum closeout price. Integer US cents: 803 means $8.03, not $803.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.39.4

TDQS

A5/5.0
Behavior5/5

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

Annotations already declare readOnly, idempotent, openWorld, and non-destructive behavior, and the description adds substantial context beyond them: no bidding, descending price schedule, null sort behavior for revenue/visitors/inboundLinks, closeout price isolation, and the renewal/transfer-year caveat. This is unusually rich for a read-only search tool.

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 dense but every sentence earns its place, moving from definition to filtering/sorting to critical caveats to pagination. It is front-loaded with the core purpose before branching into important edge cases.

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?

For a 13-parameter search tool with no output schema, the description provides filtering fields, sorting behavior, pagination mechanics, return-field notes, and routing to the binding-price tool. Nothing material is missing for correct invocation.

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

Parameters5/5

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

Although schema coverage is 100%, the description adds critical meaning beyond the schema, including the availability of age and registrationDate fields, the oldest-registration sort recipe, null-first behavior for asc sorts on revenue/visitors/inboundLinks, and the distinction that price is closeout price alone. These are not restatements of the schema; they are operational semantics an agent must know.

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 verb and resource ('Search expired-domain closeouts') and explains the defining mechanics: fixed descending price, no bidding, first buyer takes the name. It also distinguishes this search tool from get_closeout and the website by noting that binding totals come from get_closeout.

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?

It explicitly covers when to use this tool for filtering, sorting, and paging closeouts, and when not to rely on it for pricing quotes by directing the agent to get_closeout. The pagination instruction 'Page with start/limit until start >= totalAvailable' gives concrete usage direction.

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

Deploy Server

Other Tools