Register, transfer, and manage domain names from your IDE using natural language
Designed for the Webhosting4U domain registrar
A production-ready Model Context Protocol server for managing domain names -- registrations, transfers, renewals, DNS, nameservers, contacts, and more -- through 32 MCP tools accessible via natural language from any MCP-compatible IDE.
Provided by Webhosting4U
This is an MCP server built for the Webhosting4U domain registrar. It gives your AI coding assistant (in VS Code, or any other MCP-compatible IDE) the ability to manage domain names on your behalf through the Webhosting4U DomainsReseller API. Instead of logging into a web panel, you just type what you want in natural language:
"Is example.com available?"
"Register mydomain.io for 2 years"
"Show me the DNS records for mysite.gr"
The AI calls the right tool automatically. No manual API calls, no web forms -- just conversation.
Model Context Protocol (MCP) is an open standard that lets AI assistants in IDEs connect to external tools and services. This server implements MCP so your IDE can talk to the domain registration API directly.
- 32 domain management tools -- register, transfer, renew, DNS, nameservers, contacts, WHOIS, and more
- Natural language interface -- ask "Is example.com available?" and get an answer
- Works with any MCP-compatible IDE -- VS Code, and any editor that supports Streamable HTTP MCP
- Secure by design -- API keys encrypted at rest, session-based auth, rate limiting, zero data leakage
- Globally distributed -- runs on Cloudflare's edge network for low latency worldwide
To use this MCP server you need a Domain Reseller account and an API key from Webhosting4U.
- Create an account -- Order a Domain Reseller package. Orders are manually reviewed and activated.
- Get your API key -- Once your account is activated, generate an API key from your reseller control panel.
- Add credits -- Domain registrations, transfers, and renewals require available credits in your account. Top up your balance before placing orders.
Point your MCP client at the server endpoint:
https://mcp-domains.webhosting4u.gr/mcp
Transport: Streamable HTTP
VS Code (1.99+)
- Open VS Code Settings and enable
chat.mcp.enabled - Create a file called
.vscode/mcp.jsonin your project root - Paste the following configuration:
{
"servers": {
"domains-reseller": {
"type": "http",
"url": "https://mcp-domains.webhosting4u.gr/mcp"
}
}
}- Restart VS Code
The "domains-reseller" server will now appear in your MCP servers list.
Other MCP Clients
Any client supporting Streamable HTTP transport can connect. Configure it with:
- URL:
https://mcp-domains.webhosting4u.gr/mcp - Transport: Streamable HTTP
- Content-Type:
application/json - Accept:
application/json, text/event-stream
Once your IDE is connected, open the AI chat and type:
Log me in to the domains reseller with email
your@email.comand API keyYOUR_API_KEY
Replace your@email.com with the email associated with your Webhosting4U reseller account, and YOUR_API_KEY with the API key from your control panel.
The server will:
- Validate your credentials against the upstream API
- Encrypt your API key and store it securely on the server
- Return a session token valid for 12 hours
After login, your API key is never sent again. All tool calls use the session token.
Just ask in plain language. The AI will pick the right tool automatically:
| What you say | What happens |
|---|---|
| "Is example.com available?" | Checks domain availability |
| "Check DNS records for mydomain.gr" | Gets DNS records |
| "What TLDs do you support?" | Lists available TLDs |
| "How much does a .io domain cost?" | Gets TLD pricing |
| "Register coolstartup.io for 2 years" | Registers the domain (requires credits) |
| "Transfer mydomain.com with EPP code ABC123" | Initiates domain transfer |
| "What's my account balance?" | Shows available credits |
| "Log me out" | Ends the session |
When you're done, say:
Log me out
This revokes your session immediately.
| Tool | Description |
|---|---|
auth_login |
Authenticate with email + API key, receive session token |
auth_logout |
Revoke session token |
| Tool | Description |
|---|---|
domains_lookup |
Check if a domain is available across one or more TLDs |
domains_lookup_suggestions |
Get alternative domain name suggestions |
| Tool | Description |
|---|---|
domains_information_get |
Get detailed domain information (expiry, status, etc.) |
domains_contact_get |
Get WHOIS contact details |
domains_contact_save |
Update WHOIS contact details |
domains_nameservers_get |
Get nameservers for a domain |
domains_nameservers_save |
Update nameservers |
domains_nameservers_register |
Register a child/glue nameserver |
domains_nameservers_modify |
Change a child nameserver's IP |
domains_nameservers_delete |
Delete a child nameserver |
domains_dns_get |
Get DNS records |
domains_dns_save |
Update DNS records |
domains_lock_get |
Check registrar lock status |
domains_lock_save |
Lock or unlock a domain |
domains_eppcode_get |
Get EPP/auth code for domain transfer |
domains_email_get |
Get email forwarding settings |
domains_email_save |
Update email forwarding |
domains_protectid_toggle |
Enable or disable WHOIS ID protection |
domains_release |
Release domain to another registrar |
domains_delete |
Request domain deletion |
domains_sync |
Sync domain status with registry |
domains_transfersync |
Sync transfer status |
| Tool | Description |
|---|---|
order_domains_register |
Register a new domain (requires credits) |
order_domains_transfer |
Transfer a domain to your account (requires credits) |
order_domains_renew |
Renew an existing domain (requires credits) |
order_pricing_domains_get |
Get pricing for registration, transfer, or renewal |
| Tool | Description |
|---|---|
billing_credits_get |
Check your account credit balance |
system_version |
Get API version (useful as a health check) |
tlds_list |
List all available TLDs |
tlds_pricing_get |
Get pricing for all available TLDs |
+-------------------------+
| IDE (MCP Client) |
+------------+------------+
|
| Streamable HTTP (MCP)
v
+------------+------------+ +----------------------------+
| Cloudflare Worker +---->| Workers KV |
| | | (encrypted sessions) |
| - Auth + validation | +----------------------------+
| - Tool routing |
| - Error handling +---->+----------------------------+
| | | Durable Objects |
+------------+------------+ | (per-session rate limits) |
| +----------------------------+
|
| HTTPS + HMAC-SHA256 +----------------------------+
+------------------------>| D1 Database |
| | (audit logs, no PII) |
v +----------------------------+
+------------+------------+
| WHMCS DomainsReseller |
| API (upstream) |
+-------------------------+
- API keys encrypted at rest with AES-256-GCM
- Per-session rate limiting via Durable Objects
- PII-minimized audit logging
- Fixed upstream URL (no SSRF possible)
- Zod schema validation on every input