Skip to main content
Glama
3viky

Domain Checker MCP Server

by 3viky
README.md
# Domain Checker MCP Server

Model Context Protocol (MCP) server for domain availability checking and intelligent domain recommendations.

## Purpose

Provides AI agents with domain name checking capabilities, including:

- Check if a single domain is available for registration
- Batch check multiple domains at once
- Generate intelligent domain name suggestions based on keywords
- Support for multiple TLDs (Top Level Domains)

## Features

### Available Tools

| Tool | Description |
|------|-------------|
| `check_domain` | Check if a single domain name is available |
| `check_domains_batch` | Check availability for multiple domains at once |
| `suggest_domains` | Generate domain name suggestions based on keywords |

### Intelligent Features

- **WHOIS Integration**: Uses the whoiser library for accurate domain availability checks
- **Multi-TLD Support**: Check domains across .com, .org, .net, .io, .app, and more
- **Smart Suggestions**: Generates creative domain combinations from keywords
- **Batch Processing**: Efficiently check multiple domains in a single request

## Installation

```bash
# Install dependencies
npm install
# or
pnpm install

# Build the server
npm run build
```

## Configuration

No configuration required by default. The server uses public WHOIS services.

### For Claude Code MCP Configuration

Add to your `~/.config/claude-code/mcp-servers.json`:

```json
{
  "mcpServers": {
    "domain-checker": {
      "command": "node",
      "args": ["/path/to/mcp-domain-checker/dist/index.js"]
    }
  }
}
```

## Usage Examples

### Check Single Domain

```typescript
// Check if example.com is available
await check_domain({ domain: "example.com" })
```

### Batch Check Multiple Domains

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

### Generate Domain Suggestions

```typescript
// Get 10 domain suggestions for a tech startup
await suggest_domains({
  keywords: ["tech", "startup", "ai"],
  count: 10,
  tlds: ["com", "io", "ai", "dev"]
})
```

## Development

```bash
# Watch mode for development
npm run dev

# Build for production
npm run build

# Type checking
tsc --noEmit
```

## API Reference

### check_domain

Check if a single domain name is available.

**Parameters:**
- `domain` (string, required): The domain name to check (e.g., "example.com")

**Returns:**
- `available` (boolean): Whether the domain is available
- `domain` (string): The checked domain name
- `whoisData` (object, optional): Raw WHOIS data if available

### check_domains_batch

Check availability for multiple domain names at once.

**Parameters:**
- `domains` (string[], required): Array of domain names to check

**Returns:**
- Array of availability results for each domain

### suggest_domains

Generate domain name suggestions based on keywords.

**Parameters:**
- `keywords` (string[], required): Keywords to use for suggestions
- `count` (number, optional): Maximum number of suggestions (default: 10)
- `tlds` (string[], optional): TLDs to check (default: ["com", "org", "net", "io", "app"])

**Returns:**
- Array of available domain suggestions with metadata

## License

MIT

## Author

Built with Claude Code

## Repository

https://github.com/3viky/mcp-domain-checker

TDQS

A3.7/5.0

Scored across 3 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: checking a single domain, checking multiple domains in batch, and generating suggestions. No overlap in functionality.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern: check_domain, check_domains_batch, suggest_domains. The naming is predictable and clear.

Tool Count5/5

Three tools is an appropriate number for a domain checker server, covering the essential operations without unnecessary bloat.

Completeness5/5

The tool set covers the core domain checking workflow: single check, batch check, and suggestions. There are no obvious missing operations for a domain availability service.

Maintenance

ActivityInactive
ResponsivenessNo issues