domain-whois-mcp

domain-whois-mcp

Enables AI agents to perform real-time WHOIS and RDAP lookups, domain availability checks, and TLD infrastructure exploration using native protocols without API keys.

Category
Visit Server

README

domain-whois-mcp

Give your AI agent real-time domain intelligence. WHOIS, RDAP, availability checking, bulk lookups — all via native protocols, zero API keys.

An MCP server that lets Claude (and any MCP-compatible AI) look up domain registration data, check availability, and explore TLD infrastructure using the native WHOIS (RFC 3912) and RDAP (RFC 7482) protocols directly — no third-party APIs, no rate-limited web scrapers, no API keys.


Install

Claude Code — Marketplace (single command, auto-install)

This repo is its own Claude Code plugin marketplace. Add it in one step:

/plugin marketplace add kemalabuteliyte/domain-whois-mcp
/plugin install domain-whois-mcp@domain-whois-marketplace

Or in the Claude Code UI: /plugin > Browse marketplaces > Add marketplace > paste kemalabuteliyte/domain-whois-mcp > install domain-whois-mcp.

Claude Code — CLI (one command)

claude mcp add domain-whois -- npx -y github:kemalabuteliyte/domain-whois-mcp

Claude Code — UI

  1. Open Claude Code
  2. Go to Settings (gear icon or /settings)
  3. Navigate to MCP Servers
  4. Click "Add MCP Server" (or "Add Custom Server")
  5. Fill in:
    • Name: domain-whois
    • Command: npx
    • Arguments: -y github:kemalabuteliyte/domain-whois-mcp
  6. Click Save

The server starts automatically — all 8 tools become available immediately.

Claude Code — JSON config

You can also add it directly to your project's .mcp.json:

{
  "mcpServers": {
    "domain-whois": {
      "command": "npx",
      "args": ["-y", "github:kemalabuteliyte/domain-whois-mcp"]
    }
  }
}

Or to your user config at ~/.claude.json:

{
  "mcpServers": {
    "domain-whois": {
      "command": "npx",
      "args": ["-y", "github:kemalabuteliyte/domain-whois-mcp"]
    }
  }
}

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "domain-whois": {
      "command": "npx",
      "args": ["-y", "github:kemalabuteliyte/domain-whois-mcp"]
    }
  }
}

Restart Claude Desktop after saving.

npm (after npm publish)

npm login
npm publish
# then anyone can install with:
claude mcp add domain-whois -- npx -y domain-whois-mcp

The npm package name domain-whois-mcp is available and reserved for this project.


What's Inside

This is a full Claude Code plugin — not just an MCP connector. Installing it adds five surfaces:

Surface What you get
8 MCP tools whois_lookup, rdap_lookup, domain_check, bulk_domain_check, tld_info, whois_raw, find_whois_server, rdap_bootstrap_info
4 skills domain-lookup (general WHOIS/RDAP), project-name-finder (brainstorm + bulk-check names), domain-monitor (expiry tracking), tld-advisor (pick the right TLD)
4 slash commands /check-domain <domain>, /find-name <concept>, /domain-info <domain>, /tld <tld>
1 agent domain-strategist — dedicated subagent for multi-step naming research
2 hooks UserPromptSubmit matcher that hints about domain checks when you say "starting a new project"; PreToolUse hook that watches Bash for npm create / git init / cargo new etc. and suggests /find-name <project>

Finding a name for your next project

The headline workflow. Type:

/find-name ai invoicing

The project-name-finder skill (or the domain-strategist agent) will:

  1. Brainstorm 15–30 candidates inspired by your concept.
  2. Fan out across .com .io .dev .ai .app .co — usually 100+ lookups.
  3. Run bulk_domain_check with concurrency 5.
  4. Rank by .com availability, length, and multi-TLD coverage.
  5. Return a top-5 table:
Rank Name Available on Why it works
1 billr .com, .io, .dev 5 chars, memorable, available on all three
2 invio .io, .dev, .ai short, pronounceable
... ... ... ...

You can also just ask naturally — "I'm starting an AI invoicing SaaS, help me find a name" — and the skill triggers automatically.


What It Does

This MCP server gives your AI agent 8 tools for complete domain name intelligence:

Tool What it does
whois_lookup Full WHOIS lookup via native TCP protocol. Returns parsed structured data (registrar, dates, nameservers, contacts) + raw text. Automatically follows referrals for complete data.
rdap_lookup Modern RDAP lookup returning structured JSON. RDAP is the successor to WHOIS with better data quality.
domain_check Check if a domain is available for registration. Tries RDAP first (faster), falls back to WHOIS.
bulk_domain_check Check up to 50 domains at once with configurable parallelism (1-10 concurrent). Perfect for finding available names across TLDs.
tld_info Get information about any TLD from IANA — which WHOIS/RDAP servers handle it, registry details.
whois_raw Send raw WHOIS queries to any server. Works for IP addresses, ASN lookups, and debugging.
find_whois_server Discover which WHOIS and RDAP servers handle a domain or TLD.
rdap_bootstrap_info Browse the IANA RDAP bootstrap — see which TLDs support RDAP and their endpoints.

How It Works Under the Hood

You ask Claude: "Is cool-startup.com available?"
                          │
                    ┌─────▼──────┐
                    │  MCP Server │
                    └─────┬──────┘
                          │
              ┌───────────┼───────────┐
              ▼           ▼           ▼
        ┌──────────┐ ┌────────┐ ┌─────────┐
        │  WHOIS   │ │  RDAP  │ │  IANA   │
        │  TCP:43  │ │ HTTPS  │ │Registry │
        └────┬─────┘ └───┬────┘ └────┬────┘
             │           │           │
     Raw socket to  HTTP GET to   Discovers
     whois server   rdap server   servers for
     on port 43     with JSON     unknown TLDs
             │           │           │
             ▼           ▼           ▼
        ┌──────────────────────────────┐
        │  Parsed, structured result   │
        │  back to Claude              │
        └──────────────────────────────┘
  1. Built-in DB of 80+ known WHOIS servers is checked first (zero latency)
  2. IANA discovery kicks in for unknown TLDs — queries whois.iana.org via TCP
  3. RDAP bootstrap fetched from IANA and cached 24h for modern protocol lookups
  4. Referral following — thin WHOIS (Verisign) automatically follows to thick registrar WHOIS
  5. Smart parsing — 15+ "not found" patterns recognized across registries worldwide

Why It's Useful

For developers and startups

  • Find available domains — "Check if these 20 brand name variations are available across .com, .io, .dev, .ai"
  • Due diligence — "When does competitor.com expire? Who's their registrar?"
  • DNS debugging — "What nameservers does our domain point to? Is DNSSEC enabled?"

For domain investors

  • Bulk availability scanning — Check 50 domains in one shot with concurrent lookups
  • Expiry monitoring — Find expiration dates for domains you're watching
  • TLD research — Explore which TLDs support RDAP, find WHOIS servers for exotic ccTLDs

For security researchers

  • OSINT — Look up registration details, registrar info, domain status flags
  • Infrastructure mapping — Raw WHOIS queries for IP blocks, ASN lookups
  • Abuse investigation — Check domain registration patterns and history

For AI coding agents

  • Domain validation — Agents building web apps can verify domain configuration
  • Automated checks — CI/CD pipelines can verify domain status before deployments
  • Research automation — Agents doing competitive analysis can pull domain intel

Usage Examples with Claude

Once installed, just talk to Claude naturally:

Check availability:

"Is my-cool-app.com available? Also check .io and .dev"

Get WHOIS info:

"Look up the WHOIS for github.com — who's the registrar and when does it expire?"

Bulk check:

"I'm naming my startup 'Nexora'. Check nexora.com, nexora.io, nexora.dev, nexora.ai, nexora.co, getnexora.com, nexorahq.com"

TLD research:

"Which WHOIS server handles .tr domains? Does .ai support RDAP?"

Raw queries:

"Send a raw WHOIS query for 8.8.8.8 to whois.arin.net"

RDAP lookup:

"Get the RDAP data for cloudflare.com"


AI Coding Agent Integration

This MCP is designed to be used by autonomous coding agents (Claude Code, Cursor, Windsurf, or any MCP-compatible agent). Here's how agents can leverage it:

Agent Workflow: New Project Setup

Agent task: "Set up the domain and hosting for our new SaaS product"

1. Agent uses bulk_domain_check to find available domains
2. Agent uses whois_lookup to verify the chosen domain's status
3. Agent uses tld_info to check which protocols the TLD supports
4. Agent proceeds with DNS configuration knowing the domain landscape

Agent Workflow: Competitive Research

Agent task: "Research our top 5 competitors' web infrastructure"

1. Agent uses whois_lookup on each competitor domain
2. Extracts registrar, nameservers, creation dates
3. Uses rdap_lookup for structured data where available
4. Compiles infrastructure comparison report

Agent Workflow: Domain Portfolio Audit

Agent task: "Audit all our company domains and flag any expiring within 90 days"

1. Agent uses bulk_domain_check with all company domains
2. Parses expiration dates from results
3. Flags domains expiring soon
4. Generates renewal priority list

Programmatic Tool Usage (for agent developers)

Each tool accepts structured JSON parameters:

// whois_lookup
{ "domain": "example.com", "follow_referrals": true, "timeout": 15000 }

// bulk_domain_check
{ "domains": ["a.com", "b.io", "c.dev"], "concurrency": 5, "method": "auto" }

// whois_raw (for IP/ASN lookups)
{ "query": "AS13335", "server": "whois.radb.net" }

Tool Reference

whois_lookup

Parameter Type Default Description
domain string required Domain to look up (e.g., example.com)
server string auto Override WHOIS server
follow_referrals boolean true Follow thin WHOIS referrals
timeout number 15000 Timeout in ms

rdap_lookup

Parameter Type Default Description
domain string required Domain to look up
server string auto Override RDAP server URL
timeout number 15000 Timeout in ms

domain_check

Parameter Type Default Description
domain string required Domain to check
method auto | whois | rdap | both auto Lookup method
timeout number 15000 Timeout in ms

bulk_domain_check

Parameter Type Default Description
domains string[] required Domains to check (max 50)
concurrency number 5 Parallel lookups (1-10)
method auto | whois | rdap auto Lookup method
timeout number 15000 Per-domain timeout

tld_info

Parameter Type Description
tld string TLD without dot (e.g., com, xyz, co.uk)

whois_raw

Parameter Type Default Description
query string required Query string (domain, IP, ASN)
server string required WHOIS server hostname
port number 43 Server port
timeout number 15000 Timeout in ms

find_whois_server

Parameter Type Description
domain string Domain or TLD to find servers for

rdap_bootstrap_info

Parameter Type Description
filter string Optional: filter TLDs by substring

Architecture

src/
├── index.ts           # MCP server — 8 tools, stdio transport
├── whois-client.ts    # Native WHOIS TCP client (RFC 3912)
│                      # Referral following, TLD-specific query formats
├── whois-parser.ts    # Parses WHOIS text → structured data
│                      # 15+ not-found patterns, contact extraction
├── rdap-client.ts     # RDAP HTTP client (RFC 7482/7483)
│                      # IANA bootstrap, JSON response parsing
├── iana.ts            # IANA TLD registry integration
│                      # 80+ built-in servers, dynamic discovery, caching
└── types.ts           # TypeScript interfaces

Zero external dependencies beyond the MCP SDK and Zod. WHOIS uses Node.js net module for raw TCP. RDAP uses built-in fetch. No WHOIS npm packages, no API wrappers.


Development

git clone https://github.com/kemalabuteliyte/domain-whois-mcp.git
cd domain-whois-mcp
npm install
npm run build     # compile TypeScript → dist/
npm run dev       # watch mode
node dist/index.js  # run directly

Protocol Details

WHOIS (RFC 3912): Opens TCP to port 43, sends domain\r\n, reads until close. Handles TLD-specific formats (DENIC: -T dn,ace, JPRS: /e suffix, Verisign: domain prefix).

RDAP (RFC 7482/7483): HTTP GET to {server}/domain/{name} with Accept: application/rdap+json. Follows redirects. Returns structured JSON.

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured