Registrar Domains.

Docs

Connect an agent

Two endpoints

The Streamable HTTP transport, stateless. Send JSON-RPC over POST. No session header is required.

Claude.ai, ChatGPT

Add a custom connector with the URL https://registrar-domains.com/mcp/oauth. The app opens a page where you sign in with your email and press Allow.

Claude Code

With sign-in:

claude mcp add --transport http registrar-domains https://registrar-domains.com/mcp/oauth

With a key from your dashboard:

claude mcp add --transport http registrar-domains https://registrar-domains.com/mcp --header "Authorization: Bearer apex_…"

Claude Desktop, Cursor, Windsurf, any MCP client

{
  "mcpServers": {
    "registrar-domains": {
      "type": "http",
      "url": "https://registrar-domains.com/mcp",
      "headers": {
        "Authorization": "Bearer apex_…"
      }
    }
  }
}

Tools

REST mirror

Every tool has a plain HTTP route. Full schema at /openapi.json.

Accounts and API keys

Checks and prices are open. register_domain, get_order, list_domains and list_orders work for an account: an API key, sent as Authorization: Bearer apex_… on /mcp and the REST routes, or a signed-in connection on /mcp/oauth. Every key and connection of one account sees the same orders and domains. Create a key in your dashboard after you sign in.

Prices

Prices are live from our registrar, in EUR per year before tax. Each answer shows our price and the registrar cost. Some TLDs need a minimum period; get_price returns minYears.

Answers

Availability is one of available, taken, or unknown. Unknown means the registry did not answer or the TLD has no public RDAP server. Treat unknown as "check again", never as free.

Limits

Thirty checks per minute per IP without a key. Over that you get a 429 with a retry-after header. Registration answers an order with a payment link. The domain is registered after the human pays.

For crawlers and agents

A plain-text summary lives at /llms.txt.