Dynadot

io.github.mikusnuzPublished by GitHub account mikusnuzv1.5.2Updated Oct 26, 2026

MCP server for Dynadot domain registrar — domain search, registration, DNS, and transfers

Overview

AI-generated overview

Local MCP server for the Dynadot domain registrar that lets an assistant search, register, renew and configure domains, DNS, contacts and transfers.

What you can do
  • Search, register, renew, delete, restore and push domains, and list account domains
  • Read and set DNS records, nameservers, DNSSEC and nameserver IPs
  • Create, edit, delete and list contacts, including regional and .cn audit settings
  • Initiate, cancel and check domain transfers, get or set auth codes, and handle push requests
  • Set WHOIS privacy, forwarding, auto-renew, locks, parking, hosting and email forwarding; manage folders
  • View account info, balance, orders, coupons and TLD prices; browse auctions, place bids, backorders and marketplace purchases
When to use it
Useful when you manage domains at Dynadot and want an assistant to handle routine registrar work: checking availability and prices, editing DNS or nameservers, renewing or locking domains, and reviewing account and marketplace activity.
Requirements
Runs locally via npm (Node.js 20 or newer) with npx or a global install. Requires a Dynadot API key in DYNADOT_API_KEY; optional DYNADOT_SANDBOX set to true uses the sandbox API. Network access to Dynadot is needed.
Before you install
The API key grants control of a registrar account, so treat it as sensitive and prefer sandbox mode for testing. Many tools spend money or change live state: registration, renewal, bids, backorders, marketplace purchases, transfers, DNS replacement, DNSSEC changes and deletions. set_dns replaces existing records unless the append option is used, so read current DNS first. The client uses API3, which Dynadot lists for retirement, with no fallback to REST v2.

Installation

In SourceWeft

  1. Open Dynadot in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

English | 한국어

dynadot-mcp

[npm version] [MCP Badge]

MCP (Model Context Protocol) server for the Dynadot domain registrar API. Manage domains, DNS records, contacts, transfers, and more — all from your AI assistant.

API compatibility

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.

DNS and nameservers

  • 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.
  • DNS is replaced by default. Pass 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.
  • Free-form options cannot override the configured API key, command, or an explicitly selected domain/contact/folder.

When to Use

Tell your AI assistant things like:

  • "Search for available domains" — bulk-check up to 100 domain names at once with pricing
  • "Register a new domain" — register or bulk-register domains
  • "Update DNS records for my domain" — set A, AAAA, CNAME, MX, TXT, SRV records
  • "Transfer a domain to Dynadot" — initiate inbound transfers with auth codes
  • "Set up email forwarding" — configure email forwarding or MX records
  • "Renew my domain" — renew before expiration
  • "Lock/unlock domain for transfer" — manage transfer lock status
  • "Check domain WHOIS info" — view and manage WHOIS privacy settings

AI Agent Integration: See llms.txt for a machine-readable summary, or copy templates/CLAUDE.md / templates/AGENTS.md into your project for automatic MCP discovery.

Features

  • 67 tools covering Dynadot API3 domain management commands
  • Domain search, registration, renewal, deletion
  • DNS record management (A, AAAA, CNAME, MX, TXT, SRV)
  • Nameserver configuration and DNSSEC
  • Contact CRUD operations
  • Domain transfers (in/out)
  • WHOIS privacy, forwarding, locking
  • Folder organization
  • Marketplace: auctions, backorders, listings
  • Account info and balance resources
  • Sandbox mode for testing

Installation

Requires Node.js 20 or newer, matching the MCP SDK's installed runtime dependencies.

bash
npm install -g dynadot-mcp

Or run directly:

bash
npx dynadot-mcp

Configuration

Set the following environment variables:

VariableRequiredDescription
DYNADOT_API_KEYYesYour Dynadot API key (get one here)
DYNADOT_SANDBOXNoSet to true to use the sandbox API (default: false)

Usage with Claude Code

Add to your Claude Code MCP settings (~/.claude/settings.json or project .claude/settings.json):

json
{  "mcpServers": {    "dynadot": {      "command": "npx",      "args": ["-y", "dynadot-mcp"],      "env": {        "DYNADOT_API_KEY": "your_api_key_here"      }    }  }}

Usage with Claude Desktop

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):

json
{  "mcpServers": {    "dynadot": {      "command": "npx",      "args": ["-y", "dynadot-mcp"],      "env": {        "DYNADOT_API_KEY": "your_api_key_here"      }    }  }}

Available Tools

Domain Management

ToolDescription
search_domainCheck domain availability (up to 100 at once, with pricing and language options)
register_domainRegister a new domain
bulk_register_domainsRegister multiple domains at once
get_domain_infoGet detailed domain information
list_domainsList all domains in account
renew_domainRenew a domain
delete_domainDelete a domain (grace period)
restore_domainRestore a deleted domain (redemption period)
push_domainPush domain to another Dynadot account

DNS

ToolDescription
get_dnsGet DNS records for a domain
set_dnsSet DNS records (A, AAAA, CNAME, MX, TXT, etc.)
set_nameserversConfigure nameservers (up to 13)
get_nameserversGet current nameservers
register_nameserverRegister a custom nameserver
get_dnssecGet DNSSEC settings
set_dnssecSet a DS record or DNSKEY, or clear DNSSEC
add_nameserverAdd a new nameserver entry
set_nameserver_ipUpdate a nameserver's IP address
delete_nameserverDelete nameserver IDs or one exact nameserver hostname
list_registered_nameserversList 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).

Contacts

ToolDescription
create_contactCreate a new contact
edit_contactEdit an existing contact
delete_contactDelete a contact
list_contactsList all contacts or get details
set_contact_regional_settingSet EU/LV/LT regional contact settings
manage_cn_auditCreate or check .cn domain audit
set_reseller_verificationSet reseller WHOIS verification status

Transfers

ToolDescription
transfer_domainInitiate a domain transfer
cancel_transferCancel a pending transfer
get_transfer_statusCheck transfer status
get_auth_codeGet transfer auth/EPP code (with optional unlock and code regeneration)
authorize_transfer_awayApprove outgoing transfer
set_auth_codeSet transfer authorization code
manage_domain_pushView/accept/reject domain push requests

Settings

ToolDescription
set_privacySet WHOIS privacy (full/partial/off)
set_whois_contactsSet WHOIS contacts
set_forwardingSet URL/stealth forwarding
set_renew_optionSet auto-renewal option
lock_domainLock or unlock domain for transfer protection
set_domain_noteSet domain note and folder
set_parkingEnable domain parking
set_hostingSet Dynadot hosting (basic/advanced)
set_email_forwardSet email forwarding or MX records
clear_domain_settingClear a specific domain service setting

Folders

ToolDescription
create_folderCreate a new folder
delete_folderDelete a folder
list_foldersList all folders
set_folder_settingsApply default settings to folder (WHOIS, NS, DNS, forwarding, etc.)
rename_folderRename a folder

Account

ToolDescription
get_account_infoGet account information
get_account_balanceCheck account balance
set_account_defaultsSet default account settings
list_ordersList order history
get_order_statusCheck order status by ID
check_processingCheck for pending operations
list_couponsList available coupons
get_tld_priceGet TLD pricing info

Marketplace

ToolDescription
get_auctionsList open/closed auctions
place_bidPlace a bid on an auction
manage_backordersAdd/delete/list backorder requests
set_for_saleList a domain for sale
get_marketplace_listingsView marketplace listings
get_auction_detailsGet auction details and bid history
manage_backorder_auctionsView/bid on backorder auctions
buy_expired_domainBrowse/buy expired closeout domains
buy_it_nowPurchase a marketplace listing
confirm_marketplace_actionConfirm Afternic/Sedo actions

Resources

URIDescription
dynadot://accountAccount information snapshot
dynadot://balanceCurrent account balance
dynadot://domainsFull domain list

Development

bash
git clone https://github.com/mikusnuz/dynadot-mcp.gitcd dynadot-mcpnpm installnpm run dev

License

MIT

Source: README.md at commit 750bd7c

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

3
  1. v1.5.2LatestOct 19, 2026
  2. v1.4.0Oct 8, 2026
  3. v1.3.1Sep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts