check_domain_transferOne domain in. A straight answer out: what stands in the way of moving it, whether its DNS survives the move, and what one full term costs. Read-only, no account, and it never touches a credential.
check_domain_transfertakes one domain somebody already owns at another registrar and reports what would stop a transfer, who sponsors the domain today, whether its DNS keeps answering through the move, and the total price for one full transfer term. It reads two public sources - the registry’s own record and our registrar’s price list - so it is safe to call anonymously and it knows nothing about anyone’s account.
It is the second of two tools on the Just Domain MCP server. The first, search_domains, answers whether a name is free to register. This one answers about a name that is already taken - by the person asking.
Both tools live on one hosted Model Context Protocol server. If your client is already connected for search, this tool is already there. If it is not, the install paths for Claude, ChatGPT, Cursor and any other MCP client are on the MCP server docs.
One argument, and only one:
domain - required, a string, 3 to 253 characters. One fully-qualified domain including its ending, for example acme.com.Not a bare label and not a list. Each call reads a third-party registry, so the tool takes one name at a time on purpose. No other properties are accepted: the schema sets additionalProperties: false, so a stray argument is a validation error rather than something silently ignored.
A single object. The values below are the shape, taken from a real call - the actual state and price are whatever the live read returns at the moment you ask:
supported - whether Just Domain sells this ending at all. It says nothing about this particular domain.ready - a convenience over blockers, true only when that list is empty. It can never disagree with the list, because anything we could not establish becomes a blocker rather than a green light.blockers[] - what stands in the way, most blocking first. Each carries a code, a plain detail sentence you can show as-is, and eligible_at, set only where the registry gave us a real clearing date.registrar and nameservers - who sponsors the domain today and what it is delegated to, as the registry reports them.dns_continuity.case - one of independent (the nameservers belong to a DNS provider, so a transfer does not touch them), losing_registrar (they belong to the registrar being left, which is the case that takes a site or mail down after the move), or unknown.price - or null when the price list could not be read. See the money rules below.source - which public sources actually answered on this request, as two booleans.transfer_url, next_step and auth_code_policy- the handoff link for a person, one sentence about what happens next already matched to this domain’s state, and the standing rule about authorization codes, restated in the payload so it travels with the answer.Treat the list as open. Codes can be added without a client release, so a code you do not recognise is reported through its detail string, never dropped.
Read blockers before saying anything. An empty list means nothing on the public record is in the way. It does not mean the current registrar has no hold of its own, and it never means an authorization code is unnecessary.
amount is the total for term_years years, not a rate. Most endings transfer one year at a time. .ai transfers add and charge two years, because its registry works in two-year units and offers no one-year option. Never divide the amount, never multiply it, and never label it per year. Quote term_note beside it whenever the term is longer than a year.
price: nullmeans our registrar’s price list could not be read. Say that. Do not substitute an estimate, a list price, or a figure from another ending.
expected_new_expiryis the registry’s current expiry plus the term. Present it as expected. No registry has confirmed it.
source.rdap: false means the public record could not be read on that attempt. The call still succeeds, with less in it. That is missing knowledge, and it must never be reported as a clear result.
checked_at, not a standing fact - re-run it rather than quoting an old answer back to a user later in a conversation.This tool never returns, accepts, or asks for an authorization (EPP) code, and there is no path anywhere on Just Domain that issues one to an agent or an API caller. Not this tool, not a key, not a support request. Unlocking a domain held with us, and issuing its code, are self-service for the human owner: signed in at justdomain.ai, in a browser, after typing the domain to confirm and re-authenticating. The code appears on that screen and nowhere else.
An authorization code is a bearer credential for the domain, and a chat transcript is not a place to keep one. Do not ask a user to paste one into a conversation, do not offer to hold or relay one, and never claim you can unlock or move a domain on their behalf. This is a permanent line, not a feature that has not shipped.
The walkthrough for the human half is how to move your domain to another registrar. Point an owner there.
The tool tells a user whether their domain is eligible to move and what one full term would cost. It does not start a transfer, and there is no payment step behind it. transfer_url is a page a person opens in a browser; an inbound move is arranged by hand and routed through support@just-done.ai. Do not promise what that page will do, and do not describe a checkout that is not there.
The same check is also available over plain HTTP for callers that do not speak MCP: GET https://mcp.justdomain.ai/api/transfer/precheck?domain=example.com, unauthenticated and read-only. Two differences worth knowing before you swap one for the other: the HTTP payload names the projected date new_expiry rather than expected_new_expiry, and it carries no ready, transfer_url, next_step or auth_code_policy. Every rule above still applies, and neither surface accepts an authorization code or an unlock argument.
Prefer a screen a person can read? The same answer, rendered, is the free domain transfer checker.
“I own example.com at another registrar. Can it move to Just Domain right now, and what would it cost?”
“Check whether my domain is locked or inside a window that blocks a transfer, and tell me the date it clears.”
“If I moved this domain, would my website and email keep working?”
Find a name that is free, or check a name somebody already owns. Both read-only, both anonymous.
Add to ClaudeI own [your domain] at another registrar. Using the Just Domain transfer check, tell me whether it can move right now, what is blocking it if anything, whether my DNS keeps working through a move, and the total price for one full term. Do not ask me for an authorization code.
Paste this into ChatGPT, Claude, or any AI assistant.
This part is written for AI assistants like ChatGPT or Claude. You can skip it.
Facts reviewed 2026-09-09