Registrar Domains.

Find a domain.
Keep it for less.

Every renewal is priced from our registrar's cost by the same margin rule, so the price you see is the price you keep paying. See the comparison.

Or let your agent search and buy: MCP server · REST APIPress / to search

Renewal prices

The first year is the hook. Renewal is the bill.

Most registrars win you with a low first year, then charge more every year after. Every renewal is priced from our registrar's cost by the same margin rule, so the price you see is the price you keep paying.

Renewal price per year in US dollars before VAT, by registrar and TLD. The first price column is Registrar Domains.
TLDUsNamecheapOVHcloudIONOSGandi
.comUS$13.99US$18.68US$15.10US$16.79US$35.81
.netUS$15.49US$18.78US$17.01US$16.79US$44.78
.orgUS$14.99US$19.18US$14.54US$16.79US$35.81
.frUS$8.49US$20.98US$8.72US$12.31US$26.85
.euUS$7.99US$10.98US$9.62US$13.43US$33.59
.ioUS$65.49US$75.98US$66.93US$90.68US$72.76
.aiUS$208.49US$114.98US$134.33US$151.13US$179.12
.xyzUS$17.99US$21.68US$16.22US$22.39US$33.59
.devUS$15.99US$21.18US$17.34US$27.99US$35.81
.appUS$18.49US$23.18US$20.25US$27.99US$44.78
.coUS$39.49US$45.48US$36.71US$49.26US$67.17

Renewal per year, in US dollars before VAT, read on 14 October 2026 from each registrar's public price page. Euro prices at the ECB rate of that day. "Us" is Registrar Domains, at our price read on 23 October 2026; the table shows today's price once the page loads. GoDaddy does not publish renewal prices, so it is only on the full table. The lowest price in each row is in bold. All 11 registrars, Cloudflare and Porkbun included, with first-year prices and sources →

For agents

Everything on this page works for your agent.

One MCP server and a REST API with the same tools. Your agent searches, prices and starts the order, then reads your domains and orders. You pay through the link it gives you. Automatic renewal, if you or your agent turns it on, charges your saved card before expiry.

Claude Code, with a key

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

Cursor, any MCP client, with a key

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

Plain HTTP

curl -s "https://registrar-domains.com/api/suggest?idea=quietharbor"

Same JSON as the MCP tools. Schema at /openapi.json.

  1. suggest_domainsFind me a name for “quiet harbor”.
    in
    { "idea": "quiet harbor" }
    out
    [{ "domain": "quietharbor.fr", "availability": "available", "price": { "price": …, "renewPrice": … } }, …]
  2. check_domainIs quietharbor.io free?
    in
    { "domain": "quietharbor.io" }
    out
    { "availability": "available", "source": "registrar" }
  3. get_priceWhat does .co cost to keep?
    in
    { "tld": "co" }
    out
    { "price": …, "renewPrice": …, "cost": …, "renewCost": … }
  4. register_domainRegister it for two years.
    in
    { "domain": "quietharbor.fr", "years": 2, "registrant": { … } }
    out
    { "status": "awaiting_payment", "total": …, "checkoutUrl": "https://checkout.stripe.com/…" }
  5. get_orderIs it mine yet?
    in
    { "orderId": "ord_…" }
    out
    { "status": "registered", "registeredAt": "2026-10-14T18:02:11Z" }
  6. list_domainsWhat do I own?
    in
    {}
    out
    { "domains": [{ "name": "quietharbor.fr", "expiresAt": "2028-10-14" }] }
  7. list_ordersWhat did my agents buy this month?
    in
    { "limit": 20 }
    out
    { "orders": [{ "domain": "quietharbor.fr", "status": "registered" }, …] }
  8. Plus 25 tools to run what you own: DNS records, nameservers, transfer lock and code, renewal and the activity log. Every tool, its arguments, and how to connect →

agent sessionlive API

    Real calls to /api/suggest, with live prices. The last step shows what the agent gets back; no order is created.

    All 32 tools

    • check_domainopen

      Is this exact domain available?

      Docs for check_domain
    • suggest_domainsopen

      Try one idea across the launch TLDs and rank by availability.

      Docs for suggest_domains
    • get_priceopen

      First-year and renewal price in USD before VAT for one TLD, next to our registrar's costs (cost, renewCost).

      Docs for get_price
    • register_domainread

      Start a registration.

      Docs for register_domain
    • get_orderread

      Follow an order.

      Docs for get_order
    • list_domainsread

      The domains of your account, soonest expiry first, with state, expiry, days left and auto-renew.

      Docs for list_domains
    • list_ordersread

      The orders of your account, newest first, from every key and connection, with the amount paid and the invoice link.

      Docs for list_orders
    • get_domainread

      One domain: expiry, auto-renew, nameservers, transfer lock, DNSSEC, what the registry allows, and whether it is managed here.

      Docs for get_domain
    • renew_domainread

      Start a renewal for N years.

      Docs for renew_domain
    • get_basketread

      The account's basket, priced live: domains, years, options, line totals and the subtotal.

      Docs for get_basket
    • set_basketread

      Replace the basket with lines of { domain, years, addons }.

      Docs for set_basket
    • checkout_basketread

      One order and one payment link for the whole basket, every domain to the same registrant.

      Docs for checkout_basket
    • list_dns_recordsread

      The DNS records of a domain, each with a stable id, and whether our nameservers serve them.

      Docs for list_dns_records
    • add_dns_recordwrite

      Add a DNS record: A, AAAA, CNAME, MX, TXT, CAA or SRV.

      Docs for add_dns_record
    • update_dns_recordwrite

      Replace one DNS record by its id.

      Docs for update_dns_record
    • delete_dns_recordwrite

      Remove one DNS record by its id.

      Docs for delete_dns_record
    • set_nameserverswriteAsks by email first

      Ask to point the domain to other nameservers (two to thirteen), or back to ours with an empty list.

      Docs for set_nameservers
    • use_cloudflarewriteAsks by email first

      Ask to move the domain's DNS to Cloudflare: exactly the two nameservers Cloudflare assigned.

      Docs for use_cloudflare
    • get_cloudflare_statusread

      Where the move to Cloudflare stands: pending, waiting, live (visible in public DNS), failed with the reason, or replaced, and what public DNS answers now.

      Docs for get_cloudflare_status
    • export_zone_fileread

      The domain's DNS records as a BIND zone file, to import in Cloudflare (DNS → Records → Import and Export) before a move.

      Docs for export_zone_file
    • turn_off_dnssecwriteAsks by email first

      Ask to turn DNSSEC off before a move to Cloudflare.

      Docs for turn_off_dnssec
    • connect_cloudflarewrite

      Link the owner's Cloudflare account with an API token (Zone: Read, Zone: Edit, DNS: Edit), so the one-click move can create the zone and copy the records.

      Docs for connect_cloudflare
    • get_cloudflare_connectionread

      Whether a Cloudflare account is linked: its id and name, when, and whether the link stays after a move.

      Docs for get_cloudflare_connection
    • disconnect_cloudflarewrite

      Delete the stored Cloudflare token.

      Docs for disconnect_cloudflare
    • prepare_cloudflare_movewrite

      Create the domain's zone on the linked Cloudflare account (Free plan) and copy every DNS record exactly, then read it back.

      Docs for prepare_cloudflare_move
    • switch_cloudflare_movewriteAsks by email first

      Point a prepared move's nameservers to Cloudflare, after every check again.

      Docs for switch_cloudflare_move
    • get_cloudflare_moveread

      Where the one-click move stands: preparing, prepared (with the diff), switching, switched, active, failed or cancelled, and what public DNS shows.

      Docs for get_cloudflare_move
    • cancel_cloudflare_movewrite

      Cancel a prepared move.

      Docs for cancel_cloudflare_move
    • set_transfer_lockwriteUnlocking asks by email first

      Lock the domain against transfers, at once, where the registry allows it.

      Docs for set_transfer_lock
    • set_auto_renewwriteTurning on asks by email first

      Turn auto-renew off at once, or ask to turn it on.

      Docs for set_auto_renew
    • get_auth_codetransferAsks by email first

      Ask for the transfer code, to move the domain to another registrar.

      Docs for get_auth_code
    • get_domain_activityread

      Who changed what on a domain, newest first: DNS, nameservers, lock, auto-renew, transfer code, renewals.

      Docs for get_domain_activity

    How buying works

    No password. One payment. Yours in minutes.

    Search, and add the names you want to your basket. Sign in with the link we email you. Fill in the registrant once for every name, then pay once by card. Your domains, DNS, renewals and invoices stay in one account.

    • You pay first, then we buy

      We never pay the registrar before your payment clears. An order that is not paid simply expires.

    • Refund if it fails

      If the registry refuses the registration, you get your money back in full.

    • Our cost is public

      The API shows what our registrar charges us next to what we charge you. The gap is our whole margin.

    • Renewal price up front

      You see the renewal price before you pay. It follows our registrar's cost, with the same margin as the first year. Renew from your dashboard, or from the link in the reminder emails we send 30 and 7 days before expiry. Automatic renewal is off by default. Turn it on per domain in the dashboard, or confirm an agent's request from the email we send you, and we charge your saved card 7 days before expiry, then renew. You can turn it off at any time.

    Full conditions in the terms of sale.

    Your account

    One dashboard for you and your agent.

    Search and prices need no account. Sign in with the link we email you. No password.

    • Domains and renewal

      Turn auto-renew on or off, or renew a domain now.

    • DNS records

      Add, edit and delete records, or start from a template.

    • Nameservers and Cloudflare

      Use our nameservers or yours, or move the domain to Cloudflare.

    • Transfer and activity

      Lock the domain, get the transfer code, and see who changed what.

    • Orders & invoices

      Every order with its invoice.

    • Connect agent

      Create or revoke API keys, or let Claude.ai, ChatGPT and Claude Code connect by signing in.

    Sign in with your email