mcp-domain-availability
Documentation
MCP Domain Availability Server
A Model Context Protocol (MCP) server for checking domain availability and pricing using the GoDaddy OTE (Operational Test Environment) API.
Features
- Check domain availability and pricing via GoDaddy OTE sandbox
- Support for multiple TLD suffixes
- Fast and Full check modes
- Support for bulk domain checking
- Rate limiting (60 calls per minute)
- Normalized pricing in dollars with 2 decimal places
- Consistent field naming and data structures
- Period normalization (stored in months, displayed in years)
Installation
Using uv (Recommended)
# Install dependencies
uv add "mcp[cli]"
# Run with MCP Inspector for testing
DOMAIN_API_KEY="your-key:your-secret" mcp dev domain_availability/server.pyManual Installation
pip install -e .Configuration
Environment Variables
- `DOMAIN_API_KEY`: Your GoDaddy OTE API credentials in format `"key:secret"` (required)
Note: The server uses GoDaddy OTE (sandbox) API by default: `https://api.ote-godaddy.com`
GoDaddy OTE Setup
1. Sign up for GoDaddy Developer account
2. Get OTE (sandbox) API credentials
3. Set the environment variable: `DOMAIN_API_KEY="your-ote-key:your-ote-secret"`
MCP Configuration
Add this to your MCP client configuration (e.g., Claude Desktop's `claude_desktop_config.json`):
{
"mcpServers": {
"domain-availability": {
"command": "uv",
"args": ["run", "mcp-domain-availability"],
"env": {
"DOMAIN_API_KEY": "your-ote-key:your-ote-secret"
}
}
}
}Usage
Development & Testing
# Start MCP Inspector for testing
DOMAIN_API_KEY="your-key:your-secret" mcp dev domain_availability/server.pyThis will start the MCP Inspector at `http://localhost:6274` for interactive testing.
Tools Available
The server provides one tool: `check_domain_availability`
Parameters
Option 1: Direct domain list
- `domains`: Array of domain names to check (e.g., `["example.com", "example.org"]`)
Option 2: Base name with TLD suffixes
- `base_name`: Base domain name (e.g., `"example"`)
- `tld_suffixes`: Array of TLD suffixes (e.g., `[".com", ".org", ".net", ".io"]`)
Optional
- `checkType`: `"FAST"` or `"FULL"` (default: `"FAST"`)
- `FAST`: Optimized for speed
- `FULL`: Optimized for accuracy
Examples
Check specific domains
{
"domains": ["example.com", "example.org", "example.net"],
"checkType": "FAST"
}Check base name with multiple TLDs
{
"base_name": "myawesomesite",
"tld_suffixes": [".com", ".org", ".net", ".io", ".dev", ".app"],
"checkType": "FULL"
}Response Format
Text Response:
Domain Availability Check Results:
✅ AVAILABLE DOMAINS:
• example.com - $12.99 USD for 1 year (Definitive)
• example.org - $8.99 USD for 2 years (Preliminary)
❌ UNAVAILABLE DOMAINS:
• example.net - Not available - Domain already registeredJSON Response (normalized fields):
{
"domains": [
{
"domain_name": "example.com",
"is_available": true,
"price_dollars": 12.99,
"currency_code": "USD",
"is_definitive": true,
"registration_period_months": 12
},
{
"domain_name": "example.net",
"is_available": false,
"price_dollars": 0.00,
"currency_code": "USD",
"is_definitive": true,
"registration_period_months": 12,
"error_message": "Domain already registered"
}
],
"errors": []
}Data Normalization
Price Normalization
- Input: GoDaddy API returns prices in micro-units (1/1,000,000 of currency)
- Output: Converted to dollars with 2 decimal places
- Example: `12000000` micro-units → `$12.00 USD`
Period Normalization
- Storage: Period stored in months for consistency
- Display: Converted to years for user-friendly display
- Example: `12 months` → `"1 year"`, `24 months` → `"2 years"`
Field Naming
Consistent, explicit field names:
- `domain_name` (instead of `domain`)
- `is_available` (instead of `available`)
- `price_dollars` (instead of `price`)
- `currency_code` (instead of `currency`)
- `is_definitive` (instead of `definitive`)
- `registration_period_months` (instead of `period`)
- `error_message` (instead of `error`)
API Integration
This server integrates with GoDaddy OTE API:
- Base URL: `https://api.ote-godaddy.com`
- Endpoint: `GET /v1/domains/available?domain={domain}`
- Headers: `Authorization: sso-key {key}:{secret}`
- Rate Limit: 60 requests per minute
Authentication Format
Authorization: sso-key your-key:your-secretError Handling
The server handles various error conditions:
- Missing API key
- Invalid domains
- API rate limits (429) - with retry guidance
- Partial responses (203)
- Authentication errors (401, 403)
- Server errors (500)
- Network timeouts
Development
Setup Development Environment
# Clone and setup
git clone
cd mcp-free-domain
uv add "mcp[cli]"
# Run tests
pytest
# Start development server
DOMAIN_API_KEY="test-key:test-secret" mcp dev domain_availability/server.pyTesting with MCP Inspector
1. Set your OTE credentials: `DOMAIN_API_KEY="your-key:your-secret"`
2. Run: `mcp dev domain_availability/server.py`
3. Open browser at `http://localhost:6274`
4. Use the session token displayed in terminal if prompted
5. Test the `check_domain_availability` tool
License
MIT License
Support
For issues and questions, please create an issue in the repository.
Frequently asked questions
What is mcp-domain-availability?
mcp-domain-availability is a Model Context Protocol (MCP) server listed in the TrackMCP directory.
How do I install mcp-domain-availability?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is mcp-domain-availability open source?
Yes — it is hosted on GitHub at https://github.com/orishmila/mcp-domain-availability and has 2 stars.
Related MCP tools
🙌 OpenHands: Code Less, Make More for the Model Context Protocol. Enhance AI assistants with powerful integrations. Python-based implementation.
Universal memory layer for AI Agents; Announcing OpenMemory MCP - local and secure memory management. Python-based implementation.
基于大模型搭建的聊天机器人,同时支持 微信公众号、企业微信应用、飞书、钉钉 等接入,可选择ChatGPT/Claude/DeepSeek/文心一言/讯飞星火/通义千问/ Gemini/GLM-4/Kimi/LinkAI,能处理文本、语音和图片,访问操作系统和互联网,支持基于自有知识库进行定制企业智能客服。
An LLM agent that conducts deep research (local and web) on any given topic and generates a long report with citations. Built for the Model Context Protocol to
🚀 The fast, Pythonic way to build MCP servers and clients Trusted by 19900+ developers. Trusted by 19900+ developers. Trusted by 19900+ developers.
🔥 MaxKB is an open-source platform for building enterprise-grade agents. MaxKB 是强大易用的开源企业级智能体平台。 for the Model Context Protocol. Enhance AI assistants with po
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP