npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@ringo380/namecheap-mcp

v1.5.0

Published

MCP server for the Namecheap API — domains, DNS, SSL, and account management

Readme

namecheap-mcp

A Model Context Protocol server that wraps the Namecheap API, giving AI assistants the ability to manage domains, DNS records, SSL certificates, and account information directly from your conversations.

Features

  • Domains — check availability, register, list, renew, reactivate, manage contacts and privacy
  • DNS — read and write host records (A, AAAA, CNAME, MX, TXT, NS), safe single-record updates, set custom or default nameservers
  • Email Forwarding — get and set per-domain forwarding rules
  • SSL — list, purchase, activate, reissue certificates; full DCV support (email, HTTP, CNAME)
  • Transfers — initiate inbound transfers, track status, list all transfers
  • Account — check balances, query pricing
  • TLD Browser — search available TLDs with filtering by name or registerability
  • Interactive Setup — configure credentials via an in-editor form or a standalone CLI tool

Requirements

Installation

See INSTALL.md for full setup instructions.

Quick start (npx — no install needed)

{
  "mcpServers": {
    "namecheap": {
      "command": "npx",
      "args": ["-y", "namecheap-mcp"]
    }
  }
}

Global install

npm install -g namecheap-mcp
{
  "mcpServers": {
    "namecheap": {
      "command": "namecheap-mcp"
    }
  }
}

Setup

Credentials are stored globally at ~/.config/namecheap-mcp/.env and are picked up automatically by any project using this server — you only need to configure once per machine.

Option 1: In-editor form (Claude Code ≥ 2.1.76)

Call the setup tool from within Claude Code. A form will appear prompting for your credentials. Your public IP is auto-detected as a default.

Tip: Submit the form promptly — the request will time out if left idle. If it times out, just call setup again.

Option 2: Interactive CLI

namecheap-mcp-setup

Option 3: Environment variables

| Variable | Description | |---|---| | NAMECHEAP_API_USER | Your Namecheap username | | NAMECHEAP_API_KEY | API key (Account → Profile → Tools → API Access) | | NAMECHEAP_CLIENT_IP | Whitelisted public IP address | | NAMECHEAP_USERNAME | Account username if different from API user (optional) | | NAMECHEAP_SANDBOX | true to use the sandbox API (optional) |

Why isn't there an "Authenticate" button in /mcp?

Claude Code's native Authenticate button in the /mcp dialog is part of the MCP 2025-06-18 HTTP+OAuth handshake, which only applies to HTTP-transport servers. namecheap-mcp uses stdio transport, so the button never appears for it. The supported auth flows are the setup elicitation tool (Option 1 above), the namecheap-mcp-setup CLI (Option 2), or the /namecheap-mcp:setup slash command.

To help you tell at a glance whether the server is actually authenticated, namecheap-mcp hides its full tool suite until credentials validate. If you see only setup and auth_status in /mcp, the server is not yet authenticated — run setup. Call auth_status anytime to see a full diagnostic (error code, whitelisted IP, config file path, and a recommended next action).

Tools

Domains

| Tool | Description | |---|---| | setup | Configure credentials interactively | | check_domains | Check availability of one or more domains | | register_domain | Purchase a new domain | | list_domains | List all domains in your account (paginated, filterable) | | get_domain_info | Full details for a single domain | | get_domain_contacts | Read WHOIS contact info (registrant, tech, admin, billing) | | set_domain_contacts | Update WHOIS contact info | | renew_domain | Renew a domain for 1–10 years | | reactivate_domain | Reactivate a recently expired domain | | get_tld_list | Browse supported TLDs; filter by name or registerability | | set_domain_autorenew | Enable or disable auto-renewal | | set_registrar_lock | Lock or unlock domain transfer | | set_whoisguard | Enable or disable WHOIS privacy | | renew_whoisguard | Renew WHOIS privacy protection |

DNS

| Tool | Description | |---|---| | get_dns_hosts | Read all DNS records for a domain (also writes a local backup snapshot) | | update_dns_record | Safely add, update, or remove a single DNS record (recommended) | | set_dns_hosts | Replace all DNS records — gated behind confirmReplaceAll + expectedDeletions | | set_dns_default | Revert to Namecheap's default nameservers | | set_dns_custom | Delegate DNS to external nameservers (e.g. Cloudflare) | | get_email_forwarding | Read email forwarding rules | | set_email_forwarding | Replace email forwarding rules — gated behind confirmReplaceAll | | list_dns_snapshots | List local DNS zone backups for a domain | | restore_dns_snapshot | Restore a zone from a local backup snapshot |

⚠️ DNS zone safety. The underlying Namecheap setHosts API is a full-replacement operation — any record not in the call is deleted. Use update_dns_record for single-record adds/updates/deletes. Never hand-call set_dns_hosts to add a record. Every read and every write produces a local snapshot at ~/.config/namecheap-mcp/snapshots/<domain>__<timestamp>-<rand>.json (up to 50 per domain), so list_dns_snapshots + restore_dns_snapshot can recover from any accidental damage.

SSL

| Tool | Description | |---|---| | list_ssl_certs | List SSL certificates in your account | | create_ssl_cert | Purchase a new SSL certificate | | get_ssl_info | Get details for a specific certificate | | activate_ssl | Activate a purchased certificate with a CSR | | reissue_ssl | Reissue a certificate with a new CSR |

Transfers

| Tool | Description | |---|---| | transfer_domain | Initiate an inbound domain transfer (requires EPP code) | | get_transfer_status | Check the status of a pending transfer | | list_transfers | List all transfers, filterable by status |

Account

| Tool | Description | |---|---| | get_balances | Account balance and withdrawable amount | | get_pricing | Pricing for domains, SSL, or Whois Guard | | auth_status | Diagnose authentication: whether credentials loaded, whether the API accepted them, and the last error with an actionable hint |

API Notes

  • DNS tools accept a full domain name like example.com — SLD/TLD splitting is handled internally
  • Error 1011102 means your NAMECHEAP_CLIENT_IP is not whitelisted in the Namecheap dashboard
  • Set NAMECHEAP_SANDBOX=true to use api.sandbox.namecheap.com for testing

Development

git clone https://github.com/ringo380/namecheap-mcp
cd namecheap-mcp
npm install
npm run dev        # tsx watch — no build needed
npm run build      # compile TypeScript
npm run type-check # type-check without emitting

After making changes: npm run build && npm install -g . to update the global install.

License

MIT