域名管理API服务

一个基于Namecheap API的域名管理协议服务器,使AI助手能够直接从对话中管理域名、DNS记录、SSL证书和账户信息。

  • by ringo380
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 ringo380/namecheap-mcp

使用说明

namecheap mcp

A. 模型上下文协议 包装的服务器 名称便宜API,使AI助手能够直接从您的对话中管理域、DNS记录、SSL证书和帐户信息。

特性

  • 领域 --检查可用性、注册、列表、续订、重新激活、管理联系人和隐私
  • 域名系统 --读写主机记录(A、AAAA、CNAME、MX、TXT、NS),安全的单记录更新,设置自定义或默认名称服务器
  • 邮件转发 --获取并设置每个域的转发规则
  • 安全套接层 --列出、购买、激活、重新颁发证书;完全DCV支持(电子邮件、HTTP、CNAME)
  • 转账 --启动入站转账,跟踪状态,列出所有转账
  • 账户 --检查余额,查询定价
  • TLD浏览器 --通过按名称或注册性进行筛选来搜索可用的顶级域名
  • 交互式设置 --通过编辑器中的表单或独立的CLI工具配置凭据

需求

安装

看 安装.md 有关完整的设置说明。

快速启动(npx--无需安装)

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

全局安装

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

设置

凭据全局存储在 ~/.config/namecheap-mcp/.env 并且由使用此服务器的任何项目自动获取——每台机器只需要配置一次。

选项1:编辑器形式(克劳德代码≥2.1.76)

打电话给 setup Claude Code中的工具。将出现一个表单,提示您输入凭据。您的公共IP被自动检测为默认IP。

提示: 请及时提交表格——如果闲置,请求将超时。如果超时,就打电话 setup 再一次。

选项2:交互式CLI

namecheap-mcp-setup

选项3:环境变量

变量 描述
NAMECHEAP_API_USER 你的名字廉价用户名
NAMECHEAP_API_KEY API密钥(帐户→ 个人资料→ 工具→ API访问)
NAMECHEAP_CLIENT_IP 列入白名单的公共IP地址
NAMECHEAP_USERNAME 帐户用户名(如果与API用户不同)(可选)
NAMECHEAP_SANDBOX true 使用沙箱API(可选)

为什么里面没有“身份验证”按钮 /mcp?

Claude Code的母语 验证 按钮在 /mcp 该对话框是MCP 2025-06-18 HTTP+OAuth握手的一部分,仅适用于HTTP传输服务器。namecheap mcp使用stdio传输,因此按钮永远不会出现。支持的身份验证流是 setup 启发工具(上述选项1) namecheap-mcp-setup CLI(选项2),或 /namecheap-mcp:setup 斜线命令。

为了帮助您一目了然地判断服务器是否确实经过身份验证,namecheap mcp隐藏了其完整的工具套件,直到凭据验证。如果你只看到 setup 和 auth_status 在 /mcp,服务器尚未通过身份验证--运行 setup.致电 auth_status 随时查看完整的诊断(错误代码、白名单IP、配置文件路径和建议的下一步操作)。

工具

领域

工具 说明
setup 交互式配置凭据
check_domains 检查一个或多个域的可用性
register_domain 购买新域名
list_domains 列出您帐户中的所有域(分页,可过滤)
get_domain_info 单个域的完整详细信息
get_domain_contacts 阅读WHOIS联系信息(注册人、技术人员、管理员、账单)
set_domain_contacts 更新WHOIS联系信息
renew_domain 续订域名1-10年
reactivate_domain 重新激活最近过期的域
get_tld_list 浏览支持的顶级域名;按名称或可注册性筛选
set_domain_autorenew 启用或禁用自动续订
set_registrar_lock 锁定或解锁域转移
set_whoisguard 启用或禁用WHOIS隐私
renew_whoisguard 更新WHOIS隐私保护

域名系统

工具 说明
get_dns_hosts 读取域的所有DNS记录(还写入本地备份快照)
update_dns_record 安全地添加、更新或删除单个DNS记录(推荐)
set_dns_hosts 替换所有DNS记录-- 门控的 后面 confirmReplaceAll + expectedDeletions
set_dns_default 恢复到Namecheap的默认名称服务器
set_dns_custom 将DNS委托给外部名称服务器(例如Cloudflare)
get_email_forwarding 阅读电子邮件转发规则
set_email_forwarding 替换电子邮件转发规则--隐藏 confirmReplaceAll
list_dns_snapshots 列出域的本地DNS区域备份
restore_dns_snapshot 从本地备份快照还原区域

⚠️ DNS区域安全。 底层Namecheap setHosts API是一个完全替换操作-任何不在调用中的记录都将被删除。 使用 update_dns_record 用于单个记录的添加/更新/删除。 从不打电话 set_dns_hosts 添加记录。每次读取和写入都会在以下位置生成本地快照 ~/.config/namecheap-mcp/snapshots/<domain>__<timestamp>-<rand>.json (每个域最多50个),因此 list_dns_snapshots + restore_dns_snapshot 可以从任何意外损坏中恢复。

安全套接层

工具 说明
list_ssl_certs 在您的帐户中列出SSL证书
create_ssl_cert 购买新的SSL证书
get_ssl_info 获取特定证书的详细信息
activate_ssl 使用CSR激活已购买的证书
reissue_ssl 使用新的CSR重新颁发证书

转账

工具 说明
transfer_domain 启动入站域传输(需要EPP代码)
get_transfer_status 检查待处理转账的状态
list_transfers 列出所有转账,可按状态筛选

账户

工具 说明
get_balances 账户余额和可提取金额
get_pricing 域名、SSL或Whois Guard的定价
auth_status 诊断身份验证:是否加载了凭据,API是否接受了凭据,以及带有可操作提示的最后一个错误

API注释

  • DNS工具接受完整域名,如 example.com --SLD/TLD拆分由内部处理
  • 错误 1011102 指你的 NAMECHEAP_CLIENT_IP 未列入Namecheap仪表板的白名单
  • 集 NAMECHEAP_SANDBOX=true 使用 api.sandbox.namecheap.com 用于测试

发展

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

更改后: npm run build && npm install -g . 更新全局安装。

许可证

麻省理工学院