Check domain availability
without leaving Claude

A free, open-source MCP server. Add one URL to Claude, then just ask — “is mybrand.ai available?”

Streamable HTTP (MCP 2026-07-28) Works with Claude, Claude Code, Cursor MIT licensed Deploy your own in ~3 min
MCP endpoint
https://domain-checker-mcp.vercel.app/mcp

What this is

One tool, one job

MCP (Model Context Protocol) is the open standard for connecting AI assistants to external tools. This server adds a single tool — check_domain_availability — so Claude can look up domains itself instead of you copy-pasting names into a registrar.

You (or Claude) send

{
  "name": "mybrand",
  "tld": "ai"
}

Whitespace is trimmed, everything is lower-cased, .AI becomes ai, and full URLs like https://mybrand.ai are rejected.

You get back

Domain: mybrand.ai
Status: AVAILABLE
TLD Valid: Yes
Check Method: WHOIS
Lookup Time: 704ms

Plus a structured JSON payload so the assistant can reason over the result reliably.

Setup · 30 seconds

Add it to Claude

Open connector settings

In Claude, go to Settings → Connectors (some plans: Feature preview → Model Context Protocol).

Add a custom connector

Click Add custom connector. Name it Domain Checker and paste the URL:

https://domain-checker-mcp.vercel.app/mcp

Enable it and ask

Save (no login needed). In a chat, turn on Domain Checker from the tools menu, then ask a question. Approve the tool call when prompted.

Remote connectors need Claude Pro, Max, Team or Enterprise. On a free plan, run it locally over stdio — see the README.

Prompts to try

Check mybrand.ai
Is mybrand.com available?
Check whether mybrand.io is available
Which of acme.dev, acme.io and acme.ai are free?

Built for production

What’s inside

🎯

One clear tool

Name + TLD in, a clean AVAILABLE / NOT AVAILABLE status out — plus structured JSON.

🌐

Any TLD

.com, .ai, .io, .dev, .co.uk… generic validation, nothing hard-coded.

🧹

Forgiving input

Trims spaces, lower-cases, turns .AI into ai, rejects full URLs.

⏱️

Reliable

Request timeouts via AbortController; rate limits and upstream errors become clean messages.

🔒

Safe by design

API key stays server-side — never in responses or logs. No user-controlled URLs, no SSRF.

Serverless

Stateless Streamable HTTP. One-click deploy to Vercel; also runs locally over stdio.

🧪

Tested

48 unit tests, strict TypeScript, no unnecessary dependencies.

🆓

Open source

MIT. Fork it, read every line, run your own copy for free.

Recommended for real use

Run your own copy — free, ~3 minutes

The shared instance above uses one rate-limited key. Your own deployment gets its own free quota and can’t be throttled by other people.

Get a free RapidAPI key

Sign up at rapidapi.com, open the Domain Status API, and subscribe to the free tier. Copy your X-RapidAPI-Key.

Fork & import to Vercel

Fork the repo, then import it at vercel.com/new. The bundled vercel.json configures everything.

Set the key & deploy

Add an environment variable RAPIDAPI_KEY with your real key (replace the detected placeholder), then Deploy.

Connect your URL to Claude

Use https://<your-project>.vercel.app/mcp in the steps above. Verify with /health — it should report "configured": true.

Full README & docs

Under the hood

How a check flows

Claude HTTPS Vercel function (MCP server) validate & normalize Domain Status API WHOIS / DNS

The server is stateless: every request is independent, nothing about your queries is stored, and logs contain no personal data or secrets. The upstream API key lives only in the server’s environment.

Quick API test

curl -s -X POST https://domain-checker-mcp.vercel.app/mcp \
  -H 'content-type: application/json' \
  -H 'accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call",
       "params":{"name":"check_domain_availability",
                 "arguments":{"name":"mybrand","tld":"ai"}}}'

FAQ

Questions

What is Domain Checker MCP?

Domain Checker MCP is a free, open-source MCP server. You add its URL (https://domain-checker-mcp.vercel.app/mcp) to an AI assistant such as Claude, ChatGPT or Gemini as a custom connector, and it gives the assistant one tool, check_domain_availability, that reports whether a domain name is available for registration using WHOIS/DNS data.

How do I check domain availability in Claude?

Add this server’s endpoint (https://domain-checker-mcp.vercel.app/mcp) as a custom connector in Claude’s settings, enable it in a chat, and ask something like “is mybrand.ai available?”. Claude calls the check_domain_availability tool and reports the result.

What is an MCP server, in plain terms?

It’s a small web service that exposes “tools” an AI assistant can call during a conversation. Instead of the model guessing whether a domain is taken, it actually runs a lookup. This one exposes exactly one tool.

Is it really free? What’s the catch?

The code is MIT-licensed and free. The hosted instance shares a single free API key, so it’s rate-limited and best for trying things out. For regular use, deploy your own copy — it takes about 3 minutes and uses your own free RapidAPI quota.

Which domains and TLDs can I check?

Any syntactically valid domain and TLD: .com, .ai, .io, .co, .dev, .app, and multi-level TLDs like .co.uk. The TLD list is not hard-coded — validation is generic.

Does it work with ChatGPT, Cursor, or other tools?

Yes. It speaks the standard MCP Streamable HTTP transport, so any MCP-compatible client can connect with just the URL — Claude, Claude Code, Cursor, and others that support remote MCP connectors.

How accurate is the result?

Availability is derived from WHOIS/DNS via the upstream Domain Status API. It’s a strong signal but not a purchase guarantee — always confirm at a registrar before relying on it. Some registries also reserve or premium-price names that look “available”.

Do you store my queries?

No. The server is stateless and keeps no database. Operational logs record events like “request started/completed” and the domain checked, without personal data, and never the API key.

I got a “rate limiting” message.

The shared instance’s free upstream tier allows very few requests per window, and there’s a per-client cap on top. Wait a few seconds, or run your own copy.