# dorukardahan/domain-search-mcp [Health: Active]

**Category:** 🔎 Search & Data Extraction  
**Repository:** https://github.com/dorukardahan/domain-search-mcp  
**GitHub Stars:** 26  
**Views:** 4  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/dorukardahan-domain-search-mcp

## Description
Fast domain availability aggregator with pricing. Checks Porkbun, Namecheap, GoDaddy, RDAP & WHOIS. Includes bulk search, registrar comparison, AI-powered suggestions, and social media handle checking.

## Tools
Capabilities this server exposes over MCP:

- **name_project** — Two-phase naming engine. Call without candidates to receive generation instructions for YOUR model (you generate the names). Call again with candidates[] to get anti-slop scoring, ranking, and live availability checks (domains, socials, npm). Modes: brief (describe it), auto (I analyze the current workspace), from_name (find domains/variants for a name), from_domain (fit a found domain to a project).
- **search_domain** — Search for domain availability and pricing across multiple TLDs.

Returns:
- Availability status for each domain
- Pricing (first year and renewal) when Pricing API is configured
- Whether WHOIS privacy is included
- Human-readable insights and next steps

Examples:
- search_domain("vibecoding") → checks vibecoding.com, .io, .dev
- search_domain("myapp", ["com", "io"]) → checks specific TLDs
- **bulk_search** — Check availability for multiple domain names at once.

Efficiently searches up to 100 domains in parallel with rate limiting.
Use a single TLD for best performance.

Returns:
- Availability status for each domain
- Pricing where available
- Summary statistics

Example:
- bulk_search(["vibecoding", "myapp", "coolstartup"], "io")
- **compare_registrars** — Compare domain pricing across multiple registrars.

Checks the same domain at different registrars to find:
- Best first year price
- Best renewal price
- Overall recommendation

Uses the Pricing API when configured; otherwise falls back to BYOK registrars.

Returns pricing comparison and a recommendation.

Example:
- compare_registrars("vibecoding", "com") → compares Porkbun (and any configured BYOK registrars)
- **suggest_domains** — Generate and check availability of domain name variations.

Creates variations like:
- Hyphenated: vibe-coding
- With numbers: vibecoding1, vibecoding2
- Prefixes: getvibecoding, tryvibecoding
- Suffixes: vibecodingapp, vibecodinghq

Returns only available suggestions, ranked by quality.

Example:
- suggest_domains("vibecoding") → finds available variations
- **suggest_domains_smart** — AI-powered domain name suggestion engine.

Generate creative, brandable domain names from keywords or business descriptions.
Combines multiple intelligent sources for maximum coverage and quality.

Features:
- ZERO-CONFIG: Works out of the box with our fine-tuned Qwen 7B-DPO model
- Domain-specialized fine-tuned model for higher quality suggestions
- Understands natural language queries ("coffee shop in seattle")
- Auto-detects industry for contextual suggestions
- Generates portmanteau/blended names (instagram = instant + telegram)
- Applies modern naming patterns (ly, ify, io, hub, etc.)
- Filters premium domains by default
- Availability verified via Porkbun/RDAP
- Graceful fallback: Fine-tuned Qwen → Semantic engine

Examples:
- suggest_domains_smart("ai customer service") → AI-themed suggestions
- suggest_domains_smart("organic coffee", industry="food") → Food-focused names
- suggest_domains_smart("vibecoding", style="short") → Minimal length names
- **tld_info** — Get information about a Top Level Domain (TLD).

Returns:
- Description and typical use case
- Price range
- Any special restrictions
- Popularity and recommendations

Example:
- tld_info("io") → info about .io domains
- **check_socials** — Check if a username is available on social media and developer platforms.

Supports 10 platforms with varying confidence levels:
- HIGH: GitHub, npm, PyPI, Reddit, Twitter/X (reliable public APIs)
- MEDIUM: YouTube, ProductHunt (status code based)
- LOW: Instagram, LinkedIn, TikTok (block automated checks - verify manually)

Returns availability status with confidence indicator.

Example:
- check_socials("vibecoding") → checks GitHub, Twitter, Reddit, npm
- check_socials("myapp", ["github", "npm", "pypi"]) → developer platforms only
- **analyze_project** — Analyze a local project or GitHub repository to extract context for domain suggestions.

This tool scans project manifest files (package.json, pyproject.toml, Cargo.toml, go.mod)
and README files to understand your project, then generates relevant domain name suggestions.

**Use Cases:**
1. Find a domain for your existing codebase
2. Get domain ideas that match your project's identity
3. Analyze any GitHub repo for branding inspiration

**Supported Projects:**
- Node.js (package.json)
- Python (pyproject.toml, setup.py)
- Rust (Cargo.toml)
- Go (go.mod)
- Any project with README.md

**Examples:**
- analyze_project("/path/to/my-app") → Analyzes local project
- analyze_project("https://github.com/vercel/next.js") → Analyzes GitHub repo
- analyze_project("/my-project", suggest_domains=true, style="short") → Short brandable names
- **hunt_domains** — Find valuable domains for investment opportunities.

Scans Sedo auctions, generates pattern-based candidates, and calculates investment scores
based on length, TLD value, keyword matches, and pronounceability.

**Investment Score Factors:**
- Length: Shorter = higher score (3-4 chars = +25 points)
- TLD Value: .com = +25, .io/.ai = +15, .co = +12
- Keyword Match: +5 per keyword found in domain
- Pronounceability: Good vowel ratio = +10
- Aftermarket Price: Lower prices get bonus points

**Pattern Types:**
- `short`: 3-5 character pronounceable patterns (CVC, CVCV)
- `dictionary`: Common words that make good domains
- `brandable`: Keyword + modern suffixes (-ly, -ify, -io)
- `acronym`: Abbreviations from multiple keywords
- `numeric`: Keyword + numbers (7, 24, 365)

**Examples:**
- hunt_domains(keywords=["ai", "chat"]) → Find AI/chat themed domains
- hunt_domains(max_length=5, tlds=["com"]) → Ultra-short .com domains
- hunt_domains(max_aftermarket_price=500) → Sedo auctions under $500
- hunt_domains(patterns=["short"], score_threshold=60) → High-scoring short domains
- **expiring_domains** — Find domains that are about to expire and may become available soon.

Monitors the federated negative cache for domains approaching their expiration date.
Useful for domain investors and those watching specific domains.

Requires NEGATIVE_CACHE_URL to be configured.

Examples:
- expiring_domains(days=30) → Domains expiring in the next 30 days
- expiring_domains(tlds=["com"], days=7) → .com domains expiring within a week
- expiring_domains(keywords="ai") → AI-related domains expiring soon
- **ai_health** — Check health status of AI inference services.

Returns status of:
- VPS Qwen (self-hosted llama.cpp)
- Together.ai (cloud fallback)
- Semantic Engine (offline, always available)
- Circuit breaker states
- Adaptive concurrency limits

Use when:
- AI suggestions are slow or failing
- Diagnosing which AI source is being used
- Monitoring inference infrastructure

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

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

## Documentation

## What dorukardahan/domain-search-mcp MCP server does

The dorukardahan/domain-search-mcp MCP server gives MCP clients tools for researching names, domains, registrar prices, and online handles. It can check one name across multiple TLDs, search up to 100 domains in a bulk request, compare registrar pricing, and return availability status with supporting details. Results may include first-year and renewal prices, WHOIS privacy information, price-verification links, and notes about premium or auction signals.

Naming workflows cover both simple variations and model-assisted ideation. `suggest_domains` creates predictable variants such as prefixes, suffixes, hyphenated names, and numeric forms. `suggest_domains_smart` accepts keywords or natural-language descriptions, can use an industry or style, and checks generated suggestions for availability. `name_project` uses two phases: first it returns instructions for the calling model to generate candidates, then it scores and ranks supplied candidates and can check domains, social platforms, and npm.

## How it works

Availability is designed to work without credentials. RDAP is the primary lookup source, followed by a GoDaddy public endpoint for additional premium or auction signals, with WHOIS as a fallback. GoDaddy requests are rate-limited and protected by a circuit breaker. Availability represents a point-in-time result, so candidates should be checked again before registration.

Pricing is separate from availability. A configured pricing backend can provide registrar data, while Porkbun and Namecheap credentials can be used as an alternative when that backend is not configured. The material identifies `PRICING_API_BASE_URL` as the recommended backend setting. Prices may be estimates and should be confirmed on the registrar checkout page.

The server can run over stdio for desktop MCP clients or HTTP/SSE for web-facing clients and ChatGPT Actions. Its HTTP mode exposes MCP, REST tool routes, an OpenAPI document, health information, and Prometheus-compatible metrics.

## Setup and configuration

The documented direct installation command is:

```bash
npx -y domain-search-mcp@latest
```

For source-based use, the repository instructions use `npm install`, `npm run build`, and `npm start`. Add `--http` to start the HTTP/SSE transport; `MCP_PORT` changes its port from the default 3000. Availability does not require API keys. Optional pricing uses `PRICING_API_BASE_URL` or supported registrar credentials. `NEGATIVE_CACHE_URL` is required specifically by `expiring_domains`, not for the general server. Set `SLIM_TOOLS=true` to expose the documented six-tool profile instead of the full default surface.

## Tools and capabilities

The documented tool surface includes:

- `name_project` for two-phase candidate generation guidance, scoring, ranking, and checks.
- `search_domain` for multi-TLD availability and pricing lookups.
- `bulk_search` for checking up to 100 names, preferably with one TLD.
- `compare_registrars` for first-year, renewal, and overall price comparisons.
- `suggest_domains` and `suggest_domains_smart` for generated domain candidates.
- `tld_info` for TLD descriptions, restrictions, pricing ranges, and usage guidance.
- `check_socials` for usernames on GitHub, npm, PyPI, Reddit, Twitter/X, YouTube, ProductHunt, Instagram, LinkedIn, and TikTok, with confidence levels that vary by platform.
- `analyze_project` for reading supported manifests and README files from local projects or GitHub repositories.
- `hunt_domains` for Sedo auctions and investment-oriented scoring.
- `expiring_domains` for domains approaching expiration through a configured negative cache.
- `ai_health` for inference service, circuit-breaker, and concurrency status.

The dorukardahan/domain-search-mcp MCP server is therefore suited to brand research, pre-registration checks, repository-based naming, and domain-investment discovery. Social checks with lower-confidence platforms may require manual verification.

_Full upstream README: https://allmcps.com/mcp/dorukardahan-domain-search-mcp/readme_

