namecheap-mcp
Provides tools for managing Namecheap domains and DNS, including listing and inspecting domains, checking availability and pricing, configuring nameservers and contacts, locking/unlocking transfers, registering/renewing domains, checking balances, reading and safely updating DNS records, deleting records, and configuring email forwarding.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@namecheap-mcpset www DNS to 192.0.2.10 without changing other records"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
namecheap-mcp
Stdio MCP server for Namecheap domains and DNS.
Why
Namecheap's official MCP server auth is broken (OAuth discovery points at www.namecheap.com instead of mcp.namecheap.com, single-use refresh tokens expire after ~24 hours or on concurrent refreshes), and setHosts is a footgun that overwrites the entire DNS zone (and resets EmailType if omitted) when you just want to patch one record.
Related MCP server: namecheap-webui-mcp
How
Zero-dependency stdio MCP server built on Namecheap's XML API.
Compresses the entire domain and DNS surface into 2 ergonomic tools (
domainsanddns) instead of 15+ scattered endpoints.Safe read-merge-write DNS updates (
set/deleteby record ID or{ type, name }) that automatically preserve existing records, TTLs, andEmailType(MX/MXE/FWD) unlessmode: "replace"is explicitly requested.Works directly with Namecheap XML API credentials or through a static-IP bearer proxy (like jump) so roaming networks never trip Namecheap's IP whitelist.
Tools
domainslist- List domains in account with paging and search.get- Get domain details, lock state, nameservers, WhoisGuard, and contacts.check- Check availability and pricing across standard and premium TLDs.set_nameservers- Switch between Namecheap BasicDNS (default: true) and custom nameservers.set_contacts- Update Registrant, Tech, Admin, and AuxBilling contacts.set_lock- Lock or unlock registrar transfer lock.register- Register a new domain (auto-fills contacts from an existing domain when omitted).renew- Renew a domain.balances- Get account balances.
dnsget- List DNS host records,emailType, and email forwarding rules.set- Safe read-merge-write DNS updates (with automaticEmailTypepromotion/demotion, ormode: "replace").delete- Delete specific DNS host records byidor{ type, name, value }.set_email_forwarding- Configure mailbox forwarding rules.
Usage
$ npm i
$ cp .env.example .envConfigure either Direct Namecheap API credentials or a Bearer Proxy in .env (or via env in mcp_config.json):
Direct API mode
NAMECHEAP_API_KEY- Namecheap XML API key.NAMECHEAP_USER- Namecheap username.NAMECHEAP_CLIENT_IP- Whitelisted client IPv4 address.NAMECHEAP_URL(optional) - Defaults tohttps://api.namecheap.com/xml.response.
Bearer Proxy mode
NAMECHEAP_URL- Proxy endpoint URL.NAMECHEAP_TOKEN- Proxy bearer token.
{
"mcpServers": {
"namecheap": {
"command": "npx",
"args": ["-y", "github:jessetane/namecheap-mcp"]
}
}
}Test
$ npm testLicense
MIT
Available Tools
2 toolsdnsB
Read, add/update (safe read-merge-write), or delete DNS host records and email forwarding settings on a Namecheap domain.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | For action="set": "merge" (default) preserves existing records; "replace" overwrites the entire zone with the provided records. | |
| action | Yes | DNS action: "get" lists records; "set" safely merges/updates records (or replaces zone when mode="replace"); "delete" removes matching records; "set_email_forwarding" configures email forwarding rules. | |
| domain | Yes | Target domain name (e.g. "example.com"). | |
| upsert | No | For action="set" in merge mode: when true (default), updating a single-target record (A, AAAA, CNAME, ALIAS, URL, URL301, FRAME) with the same (type, name) replaces its existing value in-place instead of adding a second record. | |
| records | No | DNS records to add/update (for "set") or matchers to remove (for "delete"). | |
| forwards | No | Email forwarding rules for action="set_email_forwarding". | |
| emailType | No | Optional mail routing mode override. Automatically set to "MX" or "MXE" when MX/MXE records are present. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden; it does disclose the single most important non-obvious trait — that 'set' performs a safe read-merge-write rather than a blind overwrite. It stays silent on destructive aspects of 'delete' (does it remove only matching records? what if matchers are empty?), permission/API-key requirements, idempotency, and error behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact, front-loaded sentence with no filler. It is efficient, though for a seven-parameter tool with a destructive action the brevity borders on under-specification rather than optimal sizing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The action surface is covered and the merge-safety behavior is called out, which is the key hazard for 'set'. However, with no annotations and no output schema, the definition should say more about the destructive 'delete' path and what 'get' returns; those gaps leave an agent dependent on the schema alone for risk assessment.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents every parameter including mode, upsert, records, forwards and emailType. The description adds only the merge-safety framing and no new syntax or constraint detail, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource precisely ('DNS host records and email forwarding settings on a Namecheap domain') and enumerates the operation classes (read, add/update, delete). It implicitly separates itself from the sibling 'domains' tool by scoping to records inside a domain rather than domains themselves, though it never names the sibling explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to pick this tool over the sibling 'domains', nor when to prefer 'set' vs 'delete' vs 'set_email_forwarding'. The parenthetical 'safe read-merge-write' hints at default behavior but no exclusion or alternative is stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
domainsB
Manage Namecheap domain portfolio, availability & pricing checks, registration, renewal, nameservers, contacts, transfer lock, and account balances.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for list (default: 1). | |
| years | No | Number of years for register or renew (default: 1). | |
| action | Yes | Domain action to perform. | |
| domain | No | Target domain name (for get, set_nameservers, set_contacts, set_lock, register, renew). | |
| locked | No | Whether registrar transfer lock should be enabled (action: "set_lock"). | |
| sortBy | No | Sort order for list. | |
| domains | No | List of domain names to check availability and pricing for (action: "check"). | |
| contacts | No | Contact details for register or set_contacts. On set_contacts, omitted roles preserve existing domain contacts; on register, omitted roles fall back to registrant or account primary address. | |
| pageSize | No | Items per page for list (10–100, default: 100). | |
| promoCode | No | Optional promotional coupon code for register or renew. | |
| searchTerm | No | Filter domain list by substring. | |
| whoisGuard | No | Enable free WhoisGuard privacy on registration (default: true). | |
| nameservers | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full behavioral burden. It names mutation-oriented operations like registration, renewal, and contact changes but does not disclose costs, irreversibility, permission requirements, or side effects such as transfer-lock or contact overwrites.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence that avoids filler and directly names the domain portfolio and its operations. Its long comma-separated list is efficient but offers little structural separation between read-only and mutating capabilities.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex multi-action tool with 13 parameters, nested contact objects, no annotations, and no output schema, a one-sentence capability list is not enough. It omits action-specific behavior, mutation consequences, prerequisites, and the differing return shapes an agent should expect.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is high at 92%, so the schema already documents the parameters in detail, including contacts fallback behavior and nameserver formats. The description adds only a high-level capability list and does not materially clarify parameter usage beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Manage Namecheap domain portfolio') and enumerates the main operations, so an agent can tell this is the domain-management tool. It does not explicitly distinguish itself from the sibling dns tool, keeping it below 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The listed capabilities imply when to use the tool: portfolio listing, availability checks, registration, renewal, nameserver/contact/lock changes, and balance lookup. However, there is no explicit guidance on choosing among the nine actions or on when to use this instead of the sibling dns tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
v0.1.0- First observed
dns - First observed
domains
TDQS
Scored across 2 tools
The two tools target mostly distinct areas: domain portfolio/account/registration operations versus DNS records and email forwarding. There is minor boundary overlap around nameservers, which sit in the domains tool while DNS configuration is handled separately, but an agent can generally choose correctly.
Both names are concise, lowercase resource nouns following the same convention. The naming is predictable and easy to map to the server's domain.
Two broad tools can cover a lot of functionality, but the surface feels thin for full Namecheap domain and DNS lifecycle management. The tools are heavily aggregated, which may reduce discoverability and force agents to rely on long natural-language descriptions for action selection.
The set covers most core domain portfolio, registration, renewal, nameserver, contact, transfer-lock, balance, DNS record, and email-forwarding operations. Some lifecycle gaps remain, such as domain transfer initiation/status, privacy protection management, and DNSSEC controls.
Maintenance
Related MCP Connectors
Register, transfer and manage domain names and DNS from your AI agent.
29 DNS, SEO, SSL, security, WHOIS & mail tools for AI agents. Pay per call (x402) or card API key.
List domains and expiry dates; read, create and update LiveDNS records in Gandi.
Check domain availability, list domains and DNS zones, change DNS records in INWX.
Related MCP Servers
- AlicenseBqualityDmaintenanceProvides integration with the Namecheap API for domain management operations, including domain listing, availability checks, and nameserver configuration. It allows users to interact with their Namecheap account through natural language commands in MCP-compatible clients.320 npm20MIT
- AlicenseAqualityCmaintenanceManages Namecheap domains and account settings through the web dashboard without requiring an API key or IP allowlist.131MIT
- AlicenseAqualityDmaintenanceComprehensive MCP server for the Namecheap API, enabling domain management, DNS record control, nameserver settings, and domain registration from any MCP client.1020 npmMIT
- AlicenseAqualityDmaintenanceEnables AI assistants to manage Namecheap domains, DNS, contacts, registrar locks, and view SSL certificates and pricing through safe read and configuration tools.1661 npmMIT