# domain-checker-mcp

**Category:** 💻 Developer Tools  
**Repository:** https://github.com/WeAreBraveLabs/domain-checker-mcp  
**npm Downloads (last month):** 90  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/domain-checker-mcp

## Description
Fast domain availability checker. DNS + RDAP/WHOIS verification.

## Claude Desktop Quick Installation
Heuristic fallback — verify the package name and runner against the repository README before running it. Uses `npx` (confidence: low):

```json
"mcpServers": {
  "domain-checker-mcp": {
    "command": "npx",
    "args": ["-y","domain-checker-mcp"]
  }
}
```

## Documentation & README

# Domain Checker MCP Server

Fast domain availability checker for [Model Context Protocol (MCP)](https://modelcontextprotocol.io). DNS + RDAP/WHOIS verification.

Built by [Brave Labs](https://bravelabs.com.au)

## Features

- **Hybrid DNS + RDAP/WHOIS checking** - Fast DNS lookup, then RDAP (with WHOIS fallback) for accuracy
- **Bulk checking** - Check up to 100 domains in parallel
- **Parallel processing** - Batched verification queries for optimal throughput
- **Name expansion** - Check a base name across all popular TLDs automatically
- **Flexible filtering** - Return only available, only taken, or all results
- **Error reporting** - Clear error handling for timeouts and failures

## Installation

```bash
npm install -g @wearebravelabs/domain-checker-mcp
```

## Configuration

### Claude Desktop

Add to your `claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "domain-checker": {
      "command": "npx",
      "args": ["-y", "@wearebravelabs/domain-checker-mcp"]
    }
  }
}
```

### Claude Code

Add to your MCP settings:

```json
{
  "mcpServers": {
    "domain-checker": {
      "command": "npx",
      "args": ["-y", "@wearebravelabs/domain-checker-mcp"]
    }
  }
}
```

## Tools

### `check_domains`

Check specific domains for availability with full DNS + WHOIS verification.

```typescript
// Check multiple domains
check_domains({
  domains: ["myapp.com", "myapp.io", "myapp.dev"]
})

// Filter to only available domains
check_domains({
  domains: ["example.com", "randomname123.com"],
  filter: "available"
})
```

**Parameters:**
- `domains` (required): Array of domain names to check
- `filter` (optional): `"available"` or `"taken"` - omit for all results

### `check_names`

Check base names across popular TLDs automatically.

```typescript
// Check "myproject" across all popular TLDs
check_names({
  names: ["myproject"]
})

// Check multiple names with specific TLDs
check_names({
  names: ["startup", "launchpad"],
  tlds: ["com", "io", "co", "app"],
  filter: "available"
})
```

**Parameters:**
- `names` (required): Array of base names to check
- `tlds` (optional): Specific TLDs to check (defaults to: com, net, org, io, co, app, dev, ai, xyz, me, info, biz, us, uk, ca, au)
- `filter` (optional): `"available"` or `"taken"` - omit for all results

### `check_domains_quick`

Fast DNS-only check without WHOIS verification. Use when speed matters more than accuracy.

```typescript
check_domains_quick({
  domains: ["example.com", "test.io"]
})
```

**Parameters:**
- `domains` (required): Array of domain names to check
- `filter` (optional): `"available"` or `"taken"` - omit for all results

**Note:** DNS-only checks may show false positives for available domains. Use `check_domains` for verification.

## Example Response

```json
{
  "summary": {
    "total": 4,
    "available": 2,
    "taken": 2,
    "errors": 0,
    "totalTime": "634ms"
  },
  "available": [
    "myproject.io",
    "myproject.dev"
  ],
  "taken": [
    "myproject.com",
    "myproject.app"
  ]
}
```

With errors:

```json
{
  "summary": {
    "total": 3,
    "available": 1,
    "taken": 1,
    "errors": 1,
    "totalTime": "10234ms"
  },
  "available": ["available-domain.com"],
  "taken": ["google.com"],
  "errors": [
    { "domain": "example.xyz", "error": "WHOIS timeout" }
  ]
}
```

## How It Works

1. **DNS Check (Fast)** - All domains are checked via DNS in parallel. If DNS resolves, the domain is definitely taken.

2. **RDAP/WHOIS Verification (Accurate)** - Domains that pass DNS (no records found) are verified via RDAP (preferred) or WHOIS (fallback) to confirm availability. RDAP servers are loaded dynamically from the IANA bootstrap registry.

3. **Parallel Processing** - Verification queries run in parallel batches of 20 for optimal throughput.

This hybrid approach gives you the speed of DNS checking with the accuracy of RDAP/WHOIS verification.

## Development

```bash
# Install dependencies
npm install

# Build
npm run build

# Run locally
npm start
```

## More from Brave Labs

[bravelabs.com.au](https://bravelabs.com.au)

## License

MIT © [Brave Labs](https://bravelabs.com.au)

