Dynadot Mcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Dynadot Mcp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
English | 한국어
MCP (Model Context Protocol) server for the Dynadot domain registrar API. Manage domains, DNS records, contacts, transfers, and more — all from your AI assistant.
This release uses API3. Dynadot marks API3 as scheduled for retirement, without a shutdown date in that notice. Its replacement, REST v2, is currently Beta; Dynadot warns that compatibility is not guaranteed and recommends avoiding critical production workflows during Beta.
REST v2 is not implemented here and there is no automatic fallback. Migration requires separate API-key/secret signing, per-command request/response mappings, handling accepted-but-pending operations, and replacing API3 bulk operations with single-object calls. Those paths need sandbox verification before they can safely replace this client's domain and payment operations. API3 credentials and sandbox mode continue to work only while Dynadot supports that API.
set_dns uses set_dns2: main indexes 0..19, subdomain indexes 0..99, and the documented auxiliary recordx fields. Unknown fields and incomplete record groups are rejected before a request.add_dns_to_current_setting: "1" to append; an empty records object clears records. Read existing DNS before preparing a replacement.set_nameserver_ip accepts server_id and ips (mapped to ip0..ip9). The former host/ip inputs still work: the exact hostname is resolved to one registered server ID; missing or ambiguous matches fail without an update.delete_nameserver accepts server_id (including comma-separated IDs) or server_domain (one exact nameserver hostname). host and domain remain aliases for that exact hostname, not a request to delete all nameservers under a parent domain.Tell your AI assistant things like:
AI Agent Integration: Seellms.txtfor a machine-readable summary, or copytemplates/CLAUDE.md/templates/AGENTS.mdinto your project for automatic MCP discovery.
Requires Node.js 20 or newer, matching the MCP SDK's installed runtime dependencies.
npm install -g dynadot-mcpOr run directly:
npx dynadot-mcpSet the following environment variables:
| Variable | Required | Description |
|---|---|---|
DYNADOT_API_KEY | Yes | Your Dynadot API key (get one here) |
DYNADOT_SANDBOX | No | Set to true to use the sandbox API (default: false) |
Add to your Claude Code MCP settings (~/.claude/settings.json or project .claude/settings.json):
{
"mcpServers": {
"dynadot": {
"command": "npx",
"args": ["-y", "dynadot-mcp"],
"env": {
"DYNADOT_API_KEY": "your_api_key_here"
}
}
}
}Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"dynadot": {
"command": "npx",
"args": ["-y", "dynadot-mcp"],
"env": {
"DYNADOT_API_KEY": "your_api_key_here"
}
}
}
}| Tool | Description |
|---|---|
search_domain | Check domain availability (up to 100 at once, with pricing and language options) |
register_domain | Register a new domain |
bulk_register_domains | Register multiple domains at once |
get_domain_info | Get detailed domain information |
list_domains | List all domains in account |
renew_domain | Renew a domain |
delete_domain | Delete a domain (grace period) |
restore_domain | Restore a deleted domain (redemption period) |
push_domain | Push domain to another Dynadot account |
| Tool | Description |
|---|---|
get_dns | Get DNS records for a domain |
set_dns | Set DNS records (A, AAAA, CNAME, MX, TXT, etc.) |
set_nameservers | Configure nameservers (up to 13) |
get_nameservers | Get current nameservers |
register_nameserver | Register a custom nameserver |
get_dnssec | Get DNSSEC settings |
set_dnssec | Set a DS record or DNSKEY, or clear DNSSEC |
add_nameserver | Add a new nameserver entry |
set_nameserver_ip | Update a nameserver's IP address |
delete_nameserver | Delete nameserver IDs or one exact nameserver hostname |
list_registered_nameservers | List all registered nameservers |
set_dnssec accepts either key_tag, digest_type, digest, and algorithm (DS records from a DNS provider), or flags, public_key, and algorithm (DNSKEY). These are string values. Incomplete or mixed records are rejected before contacting Dynadot. To disable DNSSEC, pass only domain and clear: true. set_dns supports up to 20 main records and 100 subdomain records (indexes 0–99).
| Tool | Description |
|---|---|
create_contact | Create a new contact |
edit_contact | Edit an existing contact |
delete_contact | Delete a contact |
list_contacts | List all contacts or get details |
set_contact_regional_setting | Set EU/LV/LT regional contact settings |
manage_cn_audit | Create or check .cn domain audit |
set_reseller_verification | Set reseller WHOIS verification status |
| Tool | Description |
|---|---|
transfer_domain | Initiate a domain transfer |
cancel_transfer | Cancel a pending transfer |
get_transfer_status | Check transfer status |
get_auth_code | Get transfer auth/EPP code (with optional unlock and code regeneration) |
authorize_transfer_away | Approve outgoing transfer |
set_auth_code | Set transfer authorization code |
manage_domain_push | View/accept/reject domain push requests |
| Tool | Description |
|---|---|
set_privacy | Set WHOIS privacy (full/partial/off) |
set_whois_contacts | Set WHOIS contacts |
set_forwarding | Set URL/stealth forwarding |
set_renew_option | Set auto-renewal option |
lock_domain | Lock or unlock domain for transfer protection |
set_domain_note | Set domain note and folder |
set_parking | Enable domain parking |
set_hosting | Set Dynadot hosting (basic/advanced) |
set_email_forward | Set email forwarding or MX records |
clear_domain_setting | Clear a specific domain service setting |
| Tool | Description |
|---|---|
create_folder | Create a new folder |
delete_folder | Delete a folder |
list_folders | List all folders |
set_folder_settings | Apply default settings to folder (WHOIS, NS, DNS, forwarding, etc.) |
rename_folder | Rename a folder |
| Tool | Description |
|---|---|
get_account_info | Get account information |
get_account_balance | Check account balance |
set_account_defaults | Set default account settings |
list_orders | List order history |
get_order_status | Check order status by ID |
check_processing | Check for pending operations |
list_coupons | List available coupons |
get_tld_price | Get TLD pricing info |
| Tool | Description |
|---|---|
get_auctions | List open/closed auctions |
place_bid | Place a bid on an auction |
manage_backorders | Add/delete/list backorder requests |
set_for_sale | List a domain for sale |
get_marketplace_listings | View marketplace listings |
get_auction_details | Get auction details and bid history |
manage_backorder_auctions | View/bid on backorder auctions |
buy_expired_domain | Browse/buy expired closeout domains |
buy_it_now | Purchase a marketplace listing |
confirm_marketplace_action | Confirm Afternic/Sedo actions |
| URI | Description |
|---|---|
dynadot://account | Account information snapshot |
dynadot://balance | Current account balance |
dynadot://domains | Full domain list |
git clone https://github.com/mikusnuz/dynadot-mcp.git
cd dynadot-mcp
npm install
npm run devMIT
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.