MCP server for managing DNS records via the Reg.ru API.
Works with Claude Code, Cursor, and any other MCP-compatible client.
- Node.js >= 18
- A Reg.ru account with API access enabled
git clone https://github.com/konser80/mcp-regru.git
cd mcp-regru/regru-mcp-server
npm install
npm run buildThe server requires your Reg.ru credentials, passed as environment variables:
| Variable | Description |
|---|---|
REGRU_USERNAME |
Your Reg.ru account username |
REGRU_PASSWORD |
Your Reg.ru account password |
REGRU_PROXY |
HTTP proxy URL, optional (e.g. http://user:pass@host:port) |
Add to ~/.claude/settings.json:
{
"mcpServers": {
"regru": {
"command": "node",
"args": ["/path/to/mcp-regru/regru-mcp-server/dist/index.js"],
"env": {
"REGRU_USERNAME": "your_username",
"REGRU_PASSWORD": "your_password",
"REGRU_PROXY": "http://user:pass@host:port"
}
}
}
}Add to .cursor/mcp.json in your project or ~/.cursor/mcp.json globally:
{
"mcpServers": {
"regru": {
"command": "node",
"args": ["/path/to/mcp-regru/regru-mcp-server/dist/index.js"],
"env": {
"REGRU_USERNAME": "your_username",
"REGRU_PASSWORD": "your_password",
"REGRU_PROXY": "http://user:pass@host:port"
}
}
}
}Use the same configuration format supported by your client, pointing to dist/index.js with the required environment variables.
| Tool | Description |
|---|---|
regru_check_domain_availability |
Check if one or more domains are available for registration |
regru_get_dns_records |
Retrieve all DNS records for a domain |
regru_add_a_record |
Add an A record (IPv4) |
regru_add_aaaa_record |
Add an AAAA record (IPv6) |
regru_add_cname_record |
Add a CNAME record (alias) |
regru_add_mx_record |
Add an MX record (mail exchange) |
regru_add_txt_record |
Add a TXT record (SPF, DKIM, verification) |
regru_add_ns_record |
Add an NS record (nameserver delegation) |
regru_add_srv_record |
Add an SRV record (service discovery) |
regru_add_caa_record |
Add a CAA record (certificate authority) |
regru_remove_record |
Remove a specific DNS record |
regru_update_records |
Bulk add/remove DNS records in a single call |
regru_update_soa |
Update SOA record TTL settings |
regru_update_nss |
Replace the domain's authoritative nameservers (with optional glue records) |
regru_get_nss |
Get the domain's current authoritative nameservers |
regru_clear_zone |
Remove all DNS records (destructive!) |
Once configured, you can manage DNS through natural language:
- "Is example.com available?"
- "Check example.com, example.ru and example.net"
- "Show DNS records for example.com"
- "Point www.example.com to 1.2.3.4"
- "Add an MX record for Google Workspace"
- "Add SPF record for example.com"
- "Remove the old A record for api.example.com"
cd regru-mcp-server
npm run dev # Watch mode with tsx
npm run build # Compile TypeScript
npm start # Run compiled serverMIT