开放提供商MCP服务器
一 主控程序 暴露的服务器 开放式提供商 域注册商API作为Claude Code和其他MCP兼容客户端的工具。
管理域、DNS区域、名称服务器、SSL证书、WHOIS联系人、客户和账单——所有这些都可以通过您的AI助手完成。
先决条件
设置
git clone https://github.com/civiqsai/openprovider-mcp.git
cd openprovider-mcp
bash install.sh安装程序创建一个虚拟环境,安装依赖项,提示您输入Openprovider凭据,并可选择在Claude Code中注册服务器。
手动设置
python3 -m venv .venv
.venv/bin/pip install -r requirements.txt
cp .env.example .env
# Edit .env with your Openprovider username and password
chmod 600 .env
claude mcp add -s user -t stdio openprovider -- "$(pwd)/.venv/bin/python" "$(pwd)/server.py"多个账户
服务器支持跨多个Openprovider经销商帐户管理域。
配置
使用命名约定 OPENPROVIDER_{NAME}_USERNAME / OPENPROVIDER_{NAME}_PASSWORD 在你的 .env:
OPENPROVIDER_MYCOMPANY_USERNAME=user1
OPENPROVIDER_MYCOMPANY_PASSWORD=pass1
OPENPROVIDER_OTHERACCOUNT_USERNAME=user2
OPENPROVIDER_OTHERACCOUNT_PASSWORD=pass2传统的单一账户格式(OPENPROVIDER_USERNAME / OPENPROVIDER_PASSWORD)仍然受支持,并创建了一个名为“default”的帐户。
切换帐户
openprovider_list_accounts → shows available accounts and which is active
openprovider_select_account("x") → switches all subsequent calls to account "x"
openprovider_whoami → verify you're on the right account按字母顺序排列的第一个帐户在启动时处于活动状态。
工具
按类别组织的52种工具。所有列表端点支持 limit/offset 分页(默认限制=100)。
账户管理
| 工具 | 说明 |
|---|---|
openprovider_list_accounts | 列出已配置的帐户并显示哪些帐户处于活动状态 |
openprovider_select_account | 切换活动帐户 |
openprovider_whoami | 显示经销商帐户信息(公司、余额、设置) |
openprovider_get_reseller_by_id | 按ID获取经销商详细信息 |
领域
| 工具 | 说明 |
|---|---|
openprovider_list_domains | 列出具有筛选器的域(扩展名、状态、名称模式) |
openprovider_get_domain | 按ID获取完整的域详细信息 |
openprovider_check_domain | 检查域可用性 |
openprovider_get_domain_price | 获取创建/转移/续订/恢复的定价 |
openprovider_create_domain | 注册新域名 |
openprovider_transfer_domain | 将域转移到Openprovider |
openprovider_trade_domain | 更改域名注册人 |
openprovider_update_domain | 更新域设置 |
openprovider_renew_domain | 续订域 |
openprovider_delete_domain | 取消域名注册 |
openprovider_restore_domain | 恢复已删除的域(宽限期) |
openprovider_get_authcode | 获取传输/身份验证码 |
openprovider_reset_authcode | 重新生成身份验证码 |
TLD
| 工具 | 说明 |
|---|---|
openprovider_list_tlds | 列出可用的TLD扩展名 |
openprovider_get_tld | 获取TLD详细信息 |
DNS区域
| 工具 | 说明 |
|---|---|
openprovider_list_dns_zones | 列出DNS区域 |
openprovider_get_dns_zone | 获取包含所有记录的区域 |
openprovider_create_dns_zone | 创建新区域 |
openprovider_update_dns_zone | 更新区域(替换所有记录) |
openprovider_delete_dns_zone | 删除区域 |
openprovider_list_dns_records | 列出区域的记录 |
域名解析服务器
| 工具 | 说明 |
|---|---|
openprovider_list_nameservers | 列出名称服务器 |
openprovider_get_nameserver | 获取名称服务器详细信息 |
openprovider_create_nameserver | 创建名称服务器 |
openprovider_update_nameserver | 更新名称服务器 |
openprovider_delete_nameserver | 删除名称服务器 |
名称服务器组
| 工具 | 说明 |
|---|---|
openprovider_list_ns_groups | 列出名称服务器组 |
openprovider_get_ns_group | 获取组详细信息 |
openprovider_create_ns_group | 创建名称服务器组 |
openprovider_update_ns_group | 更新名称服务器组 |
openprovider_delete_ns_group | 删除名称服务器组 |
DNS模板
| 工具 | 说明 |
|---|---|
openprovider_list_dns_templates | 列出DNS模板 |
openprovider_get_dns_template | 按ID获取模板 |
openprovider_create_dns_template | 创建DNS模板 |
openprovider_delete_dns_template | 删除DNS模板 |
SSL证书
| 工具 | 说明 |
|---|---|
openprovider_list_ssl_orders | 列出SSL订单 |
openprovider_get_ssl_order | 获取订单详细信息 |
openprovider_create_ssl_order | 订购SSL证书 |
openprovider_update_ssl_order | 更新订单 |
openprovider_cancel_ssl_order | 取消订单 |
openprovider_reissue_ssl_order | 重新颁发证书 |
openprovider_resend_ssl_email | 重新发送验证电子邮件 |
WHOIS联系人
| 工具 | 说明 |
|---|---|
openprovider_list_contacts | 列出联系人 |
openprovider_get_contact | 获取联系方式 |
openprovider_create_contact | 创建联系人 |
openprovider_update_contact | 更新联系人 |
openprovider_delete_contact | 删除联系人 |
客户
| 工具 | 说明 |
|---|---|
openprovider_list_customers | 列出经销商客户 |
openprovider_get_customer | 获取客户详细信息 |
openprovider_create_customer | 创建客户 |
openprovider_update_customer | 更新客户 |
openprovider_delete_customer | 删除客户 |
账单(只读)
| 工具 | 说明 |
|---|---|
openprovider_list_invoices | 列出发票 |
openprovider_get_invoice | 获取发票详细信息 |
openprovider_list_payments | 列出付款 |
openprovider_get_payment | 获取付款详细信息 |
操作警告
成本
域名注册、续订、转移、SSL证书订购和域名恢复都需要真实的资金。MCP服务器指令告诉您的AI助手在执行这些指令之前与您确认,但始终要仔细检查。
DNS区域更新将替换所有记录
openprovider_update_dns_zone 执行完整的PUT操作——它将替换整个记录集。始终:
- 首先获取当前区域
- 修改记录数组
- 放回整套
忘记这一点会删除所有现有记录。
DNSSEC和名称服务器迁移
当将名称服务器从Openprovider迁移时(例如,迁移到Cloudflare):
- 首先禁用DNSSEC——如果NS指向其他地方,TLD处的旧DS记录将阻止解析
- 将名称服务器更新到新提供商
- 等待新提供商激活该区域(1-24小时用于清除DS记录)
- 在新提供商处启用DNSSEC
- 通过以下方式添加新的DS记录
openprovider_update_domain
当DNSSEC使用旧提供商的密钥处于活动状态时,切勿迁移名称服务器。
建筑
两个Python文件:
server.py-FastMCP服务器,具有52个工具定义(50个API工具+2个帐户管理)。每个工具都映射到一个具有JSON序列化和错误处理的Openprovider API端点。openprovider.py-HTTP客户端包装Openprovider REST API。处理身份验证(用户名/密码→ 承载令牌)、自动令牌刷新(48小时TTL,提前1小时刷新)和401重试。
服务器通过stdio传输运行——Claude Code将其作为子进程生成,并通过stdin/stdout进行通信。
许可证
麻省理工学院——见 许可证.
