MCP Domain Availability Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MCP Domain Availability ServerCheck if creative-flow.ai and creative-flow.io are available"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP Domain Availability Server
A Model Context Protocol (MCP) server for checking domain name availability using DNS, RDAP, and WHOIS lookups. This server provides AI assistants with the ability to check if domain names are available for registration.
Features
Single Domain Checking: Check availability of individual domains
Bulk Domain Checking: Check up to 50 domains simultaneously
Multi-Protocol Lookups: Uses DNS-over-HTTPS (DoH), RDAP, and WHOIS for accurate results
Robust Error Handling: Handles timeouts, rate limits, and network errors gracefully
Security Limits: Built-in protection against abuse with request limits and timeouts
Related MCP server: Domain Checker
Installation
For Cursor IDE
Add the following to your ~/.cursor/mcp.json (or %APPDATA%\Cursor\mcp.json on Windows):
{
"mcpServers": {
"domain-availability": {
"command": "npx",
"args": ["-y", "mcp-domain-availability"]
}
}
}Restart Cursor to activate the server.
For Other MCP Clients
The server can be used with any MCP-compatible client. Install globally:
npm install -g mcp-domain-availabilityThen configure your MCP client to run:
mcp-domain-availabilityUsage
Tool 1: check_domain_availability
Check if a single domain is available for registration.
Input:
{
"domain": "example.com"
}Output:
{
"domain": "example.com",
"available": false,
"status": "registered",
"registered": true,
"details": {
"availability": "registered",
"registrar": "Example Registrar",
"registrationDate": "2020-01-01",
"expirationDate": "2025-01-01"
}
}Possible status values:
unregistered- Domain is available for registrationregistered- Domain is already registeredunknown- Unable to determine status
Tool 2: check_multiple_domains
Check availability for multiple domains at once (up to 50 domains).
Input:
{
"domains": ["example.com", "test.io", "available-domain.xyz"]
}Output:
{
"results": [
{
"domain": "example.com",
"available": false,
"status": "registered",
"registered": true,
"error": null
},
{
"domain": "test.io",
"available": true,
"status": "unregistered",
"registered": false,
"error": null
},
{
"domain": "available-domain.xyz",
"available": false,
"status": "error",
"registered": false,
"error": "Network error occurred",
"errorType": "network"
}
],
"summary": {
"total": 3,
"available": 1,
"registered": 1,
"errors": 1,
"unknown": 0
}
}Error Handling
The server handles various error scenarios:
Timeout Errors: Domain checks timeout after 30 seconds
Rate Limiting: Detects and reports rate limit errors from WHOIS/DNS providers
Network Errors: Handles connection failures gracefully
Invalid Input: Validates domain format and length before checking
Error Response Format
{
"error": "Error message",
"domain": "example.com",
"suggestion": "Helpful suggestion for the user"
}Requirements
Node.js >= 18.0.0
npm or compatible package manager
Limitations
Rate Limiting: WHOIS and DNS providers may rate limit requests. The server detects and reports these errors.
Timeout: Each domain check has a 30-second timeout to prevent hanging requests.
Bulk Limit: Maximum 50 domains per bulk request to prevent abuse.
TLD Support: Supports all standard TLDs. Some newer or less common TLDs may have limited information available.
Troubleshooting
Server not starting
Verify Node.js version:
node --version(should be >= 18.0.0)Check that the package is installed:
npx -y mcp-domain-availabilityReview Cursor logs for error messages
Domain checks failing
Check your internet connection
Some domains may be rate-limited - wait a few moments and try again
Verify domain format is correct (e.g.,
example.com, nothttp://example.com)
Rate limit errors
If you encounter rate limit errors:
Wait a few minutes before making more requests
Reduce the number of domains checked in bulk operations
Consider checking domains individually with delays between requests
License
MIT License - see LICENSE file for details.
Contributing
Contributions are welcome! Please feel free to submit issues or pull requests.
Acknowledgments
Built with @modelcontextprotocol/sdk
Domain checking powered by domainstat
Available Tools
2 toolscheck_domain_availabilityA
Check if a domain name is available for registration. Uses DNS, RDAP, and WHOIS lookups. Returns availability status and details.
| Name | Required | Description | Default |
|---|---|---|---|
| domain | Yes | The domain name to check (e.g., "example.com") |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It adds valuable context beyond basic functionality by specifying the methods used ('DNS, RDAP, and WHOIS lookups') and the return information ('availability status and details'). However, it lacks details on rate limits, error handling, or authentication needs, which would be beneficial for a tool performing external lookups.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded, consisting of two concise sentences that directly state the tool's purpose, methods, and return values without any redundant information. Every sentence earns its place by providing essential details efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (single parameter, no output schema, no annotations), the description is fairly complete. It covers the purpose, methods, and return information adequately. However, without an output schema, it could benefit from more details on the structure of 'availability status and details' to fully guide the agent, but it provides enough context for basic use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with the single parameter 'domain' clearly documented in the schema. The description does not add any additional meaning or syntax details beyond what the schema provides, such as format examples or validation rules. Given the high schema coverage, the baseline score of 3 is appropriate as the schema handles the parameter documentation effectively.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Check if a domain name is available for registration'), identifies the resource ('domain name'), and distinguishes it from its sibling 'check_multiple_domains' by implying this tool handles single domains. The verb 'check' and resource 'domain name' are precise and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context through 'Check if a domain name is available for registration,' suggesting this tool is for availability verification. However, it does not explicitly state when to use this versus the sibling 'check_multiple_domains' or provide any exclusions or prerequisites. The guidance is implied but not detailed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_multiple_domainsB
Check availability for multiple domains at once (up to 50 domains). Returns results for all domains with summary statistics.
| Name | Required | Description | Default |
|---|---|---|---|
| domains | Yes | Array of domain names to check (e.g., ["example.com", "test.io"]). Maximum 50 domains. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions the tool returns 'results for all domains with summary statistics,' which adds some behavioral context about output. However, it lacks details on rate limits, error handling, authentication needs, or what 'availability' means (e.g., registration status). For a tool with no annotations, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is highly concise and front-loaded, consisting of two sentences that efficiently convey the tool's purpose and output. Every sentence earns its place by providing essential information without waste, making it easy to understand quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (batch domain checking), no annotations, and no output schema, the description is minimally adequate. It covers the basic purpose and output format but lacks details on behavioral traits, error cases, or deeper context. With no output schema, it should ideally explain return values more, but it provides enough to be functional with clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with the 'domains' parameter fully documented in the schema. The description adds marginal value by reinforcing the 'up to 50 domains' limit, which is already in the schema description. No additional parameter semantics are provided beyond what the schema covers, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Check availability for multiple domains at once' with a specific verb ('check') and resource ('domains'), and mentions the batch capability ('up to 50 domains'). It distinguishes from the sibling 'check_domain_availability' by emphasizing 'multiple domains at once,' but doesn't explicitly contrast them. The purpose is clear but lacks explicit sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by stating 'at once' and 'up to 50 domains,' suggesting it's for batch operations. However, it doesn't explicitly say when to use this tool versus the sibling 'check_domain_availability' (e.g., for single vs. multiple domains) or provide any exclusions or alternatives. Usage is implied but not clearly defined.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
2 tool updates
- First observed
check_domain_availability - First observed
check_multiple_domains
TDQS
The two tools have clearly distinct purposes: one checks a single domain, while the other handles multiple domains. The descriptions reinforce this distinction, making misselection unlikely. However, the similarity in core functionality could cause minor confusion if an agent needs to decide between them for a single domain.
Both tools follow a consistent verb_noun pattern with 'check_' prefix and snake_case naming. The naming is predictable and readable, with no deviations in style or convention across the tool set.
With only 2 tools, the server feels thin for a domain availability service. While the tools cover basic availability checks, the scope is limited, and more operations (e.g., domain suggestion, registration status, or pricing) might be expected. This borderline count could hinder agent workflows.
The tool set is significantly incomplete for a domain availability server. It lacks essential operations such as domain suggestion, registration initiation, pricing lookup, or WHOIS details retrieval. Agents will face dead ends when trying to perform common domain-related tasks beyond basic availability checks.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Check domain name availability via RDAP. Single, bulk, and smart suggestions. No API key needed.
Domain intel for AI agents: RDAP registration, DNS, email deliverability, tech stack.
61Domain intel for AI agents: RDAP registration, DNS, email deliverability, tech stack.
Buy & manage domains from any AI chat: availability, register, DNS, email forwarding, AI bot stats.
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables AI agents to perform WHOIS lookups to retrieve domain registration details, including ownership, registration dates, and availability status without requiring browser searches.45721MIT
- FlicenseNot gradedqualityDmaintenanceEnables checking domain name availability using WHOIS lookups and DNS resolution. Supports both single and batch domain checking with detailed availability analysis.-
- AlicenseAqualityDmaintenanceEnables AI agents to check domain availability, perform batch domain lookups, and generate intelligent domain name suggestions across multiple TLDs using WHOIS integration.43MIT
- AlicenseNot gradedqualityNot gradedmaintenanceEnables users to check domain name availability across 877 TLDs, generate intelligent suggestions, and retrieve WHOIS registration information. It supports bulk domain checks and cross-TLD searches through natural language interfaces.0-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/yenyifu/mcp-domain-availability'
If you have feedback or need assistance with the MCP directory API, please join our Discord server