domainmcp
SearchCheck a name across every endingDomain pricesFirst year and renewal, every endingMCP setupClaude, ChatGPT and Gemini in a minuteAPIOpen REST endpoints, no key neededDocumentationEvery endpoint, tool and limit

Documentation / Endpoints / Domain details

Domain WHOIS lookup API: GET /v1/details

Domain details

Everything known about one domain: free or taken, and for a taken one who holds it, when it was registered, when it expires and its nameservers.

Free, no keyCosts 1MCP tool: domain_details
GEThttps://api.domainmcp.net/v1/details?domain=example.com
Try itReal answers, counted in your allowance
https://api.domainmcp.net/v1/details?domain=example.com

Code

curl "https://api.domainmcp.net/v1/details?domain=example.com"

Parameters

domainstring, required
One full domain, such as example.com. /v1/whois is the same endpoint.

Returns

Some registries do not publish the registrar or dates. They come back as null rather than as a guess.

domainstring
The full domain, in lower case.
availabletrue, false or null
Null when the answer is not known yet.
statusstring
One of three values.
availabletakenunknown
confirmedboolean
True once the registry has answered. A free answer from DNS alone is confirmed within about a minute.
bystring
Where the answer came from. See Reading a result.
registryregistrardnsdns_onlyconfirming
checked_atstring
When it was checked, in UTC.
registrarstring or null
Taken only: who holds it.
registeredstring or null
Taken only: the date it was first registered.
expiresstring or null
Taken only: the date it is paid up to.
nameserverslist
Taken only: the nameservers it points to, sorted.
priceobject or null
Free only: as in every other answer, with buy_url.

Example answer

GET /v1/details?domain=example.com

{
    "data": {
        "domain": "example.com",
        "available": false,
        "status": "taken",
        "confirmed": true,
        "by": "registry",
        "checked_at": "2026-11-11T03:23:12Z",
        "registrar": "RESERVED-Internet Assigned Numbers Authority",
        "registered": "1995-08-14T04:00:00Z",
        "expires": "2027-08-13T04:00:00Z",
        "nameservers": [
            "elliott.ns.cloudflare.com",
            "hera.ns.cloudflare.com"
        ]
    },
    "meta": {
        "took_ms": 1
    }
}

Errors

bad_request400
No domain, or one that is not a domain.
unknown_parameter422
A parameter this endpoint does not take.
rate_limited429
Over 60 domains this minute from your address. Wait for the seconds in Retry-After.
quota_exceeded429
Over 2,000 domains today. It resets at 00:00 UTC.

Every error has the same shape. See Errors for all of them.