Token导航 LogoToken导航TokenDH.com
MCP Server Dnsimple logo
运维云端stdio官方级别未说明来源级核验

MCP Server Dnsimple

MCP Server

DNSimple MCP 服务器是一个用于与 DNSimple API 交互的工具,提供域名管理、DNS 配置、价格查询和域名转移等功能。

工具数

12

提示词数

0

GitHub Stars

0

资源数

0
PythonClaude云端部署ClaudeCursor

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

markmhendrickson

提供方

markmhendrickson

最后核验

2026/5/17 20:19

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install -r requirements.txt

详细介绍

DNS简单MCP服务器

用于DNSimple API交互的MCP服务器,提供用于域管理、DNS配置、定价查询和域传输的工具。

特性

  • 域管理:列出域、获取定价、检查续订成本
  • 名称服务器委派:读取并更新注册商级域名服务器
  • DNS配置:创建、更新、列出和删除DNS记录
  • 自动续订控制:禁用域的自动续订
  • 域名转移:启动向DNSimple的域传输
  • Whois隐私:检查并启用域的whois隐私(域隐私)

安装

cd execution/mcp-servers/dnsimple
pip install -r requirements.txt

配置

认证

服务器支持多种身份验证方法(按优先级顺序检查):

  1. 环境变量 (推荐,最高优先级):
   export DNSIMPLE_API_TOKEN="your-token-here"
  1. 配置目录 .env 文件 (便携式,用户特定):

- 地点: ~/.config/dnsimple-mcp/.env - 格式: DNSIMPLE_API_TOKEN=your-token-here - 首次使用时会自动创建配置目录

  1. 1密码集成 (可选,为了向后兼容):

- 仅当父存储库结构存在时才可用 - 配置标题为“DNSimple”或URL为“DNSimple.com”的1Password项 - 添加字段:“访问令牌”、“api_token”或“令牌”与您的DNSimple api令牌 - 从以下位置获取您的API令牌:https://dnsimple.com/user

注: MCP服务器是独立的、可移植的。它不需要任何特定的存储库结构,可以在任何项目中使用。

光标配置

添加到光标MCP设置(通常 ~/.cursor/mcp.json 或光标设置):

选项1:使用环境变量(推荐):

{
  "mcpServers": {
    "dnsimple": {
      "command": "python3",
      "args": [
        "/path/to/dnsimple_mcp_server.py"
      ],
      "env": {
        "DNSIMPLE_API_TOKEN": "your-token-here"
      }
    }
  }
}

选项2:使用配置目录(~/.config/dnsimple-mcp/.env中的标记):

{
  "mcpServers": {
    "dnsimple": {
      "command": "python3",
      "args": [
        "/path/to/dnsimple_mcp_server.py"
      ],
      "env": {}
    }
  }
}

注: 替换 /path/to/dnsimple_mcp_server.py 以及服务器文件的实际路径。服务器是便携式的,可以放置在任何地方。

Claude桌面配置

添加 claude_desktop_config.json (通常 ~/Library/Application Support/Claude/claude_desktop_config.json 在macOS上):

{
  "mcpServers": {
    "dnsimple": {
      "command": "python3",
      "args": [
        "/path/to/dnsimple_mcp_server.py"
      ],
      "env": {
        "DNSIMPLE_API_TOKEN": "your-token-here"
      }
    }
  }
}

注: 替换 /path/to/dnsimple_mcp_server.py 以及服务器文件的实际路径。

可用工具

list_domains

列出DNSimple帐户中的所有域。

参数:

退货:

  • account_id:DNS简单帐户ID
  • count:域名数量
  • domains:具有name、expires_at、auto_renew等的域对象数组。

例子:

{
  "account_id": "12345",
  "count": 5,
  "domains": [
    {
      "id": 123456,
      "name": "example.com",
      "expires_at": "2026-12-31",
      "auto_renew": true,
      "registrant_id": 789
    }
  ]
}

get_domain_nameservers

在注册商处获取域的当前委派名称服务器设置。

参数:

  • domain_name (必填):域名(例如“example.com”)

退货:

  • domain:域名
  • nameservers:当前委派的名称服务器
  • delegation:原始DNS简单委派有效负载

例子:

{
  "domain_name": "example.com"
}

update_domain_nameservers

在注册商级别替换域的委派名称服务器。

参数:

  • domain_name (必填):域名(例如“example.com”)
  • nameservers (必需):名称服务器主机名数组(至少2个)

退货:

  • success:布尔值表示成功
  • domain:域名
  • nameservers:更新了委派的名称服务器
  • delegation:原始DNS简单委派有效负载

例子:

{
  "domain_name": "example.com",
  "nameservers": [
    "kipp.ns.cloudflare.com",
    "mona.ns.cloudflare.com"
  ]
}

get_domain_costs

获取域名的定价信息。退还注册和续订费用。

参数:

  • domain_names (可选):要获取定价的域名数组。如果为空,则返回帐户中所有域的定价。

退货:

  • account_id:DNS简单帐户ID
  • domains:域定价对象数组

例子:

{
  "domain_names": ["example.com", "test.org"]
}

答复:

{
  "account_id": "12345",
  "domains": [
    {
      "domain": "example.com",
      "domain_info": {
        "id": 123456,
        "name": "example.com",
        "expires_at": "2026-12-31"
      },
      "prices": [
        {
          "operation": "register",
          "price": "15.00",
          "currency": "USD"
        },
        {
          "operation": "renew",
          "price": "15.00",
          "currency": "USD"
        }
      ]
    }
  ]
}

get_renewal_costs

获取域的续订费用。返回年度续订总成本和每个域的细分。

参数:

  • domain_names (可选):用于获取续订成本的域名数组。如果为空,则返回帐户中所有域的成本。

退货:

  • account_id:DNS简单帐户ID
  • total_domains:域名数量
  • total_annual_renewal_cost:所有续费费用之和
  • domains:域续订详细信息数组

例子:

{
  "domain_names": ["example.com", "test.org"]
}

答复:

{
  "account_id": "12345",
  "total_domains": 2,
  "total_annual_renewal_cost": 30.00,
  "domains": [
    {
      "domain": "example.com",
      "expires_at": "2026-12-31",
      "auto_renew": true,
      "renewal_price": 15.00,
      "currency": "USD"
    },
    {
      "domain": "test.org",
      "expires_at": "2026-06-15",
      "auto_renew": false,
      "renewal_price": 15.00,
      "currency": "USD"
    }
  ]
}

list_dns_records

列出域的DNS记录。

参数:

  • domain_name (必填):域名(例如“example.com”)
  • name (可选):按记录名称筛选
  • type (可选):按记录类型筛选(A、AAAA、CNAME、MX、TXT、NS、SRV、ALIAS)

退货:

  • domain:域名
  • count:记录数
  • records:DNS记录对象数组

例子:

{
  "domain_name": "example.com",
  "type": "A"
}

答复:

{
  "domain": "example.com",
  "count": 2,
  "records": [
    {
      "id": 123456,
      "name": "www",
      "type": "A",
      "content": "192.0.2.1",
      "ttl": 3600,
      "priority": null
    },
    {
      "id": 123457,
      "name": "@",
      "type": "A",
      "content": "192.0.2.1",
      "ttl": 3600,
      "priority": null
    }
  ]
}

configure_dns_record

创建或更新DNS记录。如果存在具有相同名称和类型的记录,它将被更新。

参数:

  • domain_name (必填):域名(例如“example.com”)
  • name (必填):记录名称(例如,根域为“www”或“@”)
  • type (必填):DNS记录类型(A、AAAA、CNAME、MX、TXT、NS、SRV、ALIAS、URL)。使用 统一资源定位符 用于DNSimple的重定向(顶点或子域→ 目标URL)。
  • content (必填):记录内容(A/AAAA的IP地址、CNAME的主机名等)
  • ttl (可选):TTL(秒)(默认值:3600)
  • priority (可选):MX记录的优先级

退货:

  • success:布尔值表示成功
  • action:“已创建”或“已更新”
  • record:DNS记录对象

示例(创建记录):

{
  "domain_name": "example.com",
  "name": "www",
  "type": "A",
  "content": "192.0.2.1",
  "ttl": 3600
}

示例(创建MX记录):

{
  "domain_name": "example.com",
  "name": "@",
  "type": "MX",
  "content": "mail.example.com",
  "priority": 10,
  "ttl": 3600
}

示例(创建CNAME记录):

{
  "domain_name": "example.com",
  "name": "blog",
  "type": "CNAME",
  "content": "example.github.io",
  "ttl": 3600
}

示例(顶点域的URL重定向):

{
  "domain_name": "example.com",
  "name": "",
  "type": "URL",
  "content": "https://github.com/username/repo",
  "ttl": 3600
}

使用空 name 顶点;DNSimple提供301重定向到 content。需要DNSimple名称服务器(如果该区域被委派到其他地方,例如Cloudflare,则不适用)。

delete_dns_record

按ID删除DNS记录。

参数:

  • domain_name (必填):域名(例如“example.com”)
  • record_id (必填):要删除的DNS记录ID

退货:

  • success:布尔值表示成功
  • message:成功消息

例子:

{
  "domain_name": "example.com",
  "record_id": "123456"
}

disable_autorenew

禁用一个或多个域的自动续订。

参数:

  • domain_names (必需):用于禁用自动续订的域名数组

退货:

  • results:操作结果数组

例子:

{
  "domain_names": ["example.com", "test.org"]
}

答复:

{
  "results": [
    {
      "domain": "example.com",
      "status": "disabled",
      "error": null
    },
    {
      "domain": "test.org",
      "status": "disabled",
      "error": null
    }
  ]
}

transfer_domain

启动向DNSimple的域传输。需要当前注册商的授权码。

参数:

  • domain_name (必填):要转移的域名
  • auth_code (必填):来自当前注册商的授权码(EPP码)
  • registrant_id (可选):注册人ID(如果未提供,则使用帐户默认值)

退货:

  • success:布尔值表示成功
  • transfer:传输具有ID和状态的对象

例子:

{
  "domain_name": "example.com",
  "auth_code": "ABC123XYZ789"
}

答复:

{
  "success": true,
  "transfer": {
    "id": 123456,
    "domain_id": 789012,
    "state": "new",
    "auto_renew": false,
    "whois_privacy": false
  }
}

注: 在启动转移之前,必须在当前注册商处解锁域名。

get_whois_privacy

获取域的whois隐私(域隐私)状态。

参数:

  • domain_name (必填):域名(例如“example.com”)

退货:

  • domain:域名
  • enabled:布尔值,指示是否启用了whois隐私
  • whois_privacy:Whois隐私对象及其详细信息
  • expires_on:whois隐私的到期日期(如果启用)

例子:

{
  "domain_name": "example.com"
}

答复:

{
  "domain": "example.com",
  "enabled": true,
  "whois_privacy": {
    "id": 123456,
    "domain_id": 789012,
    "enabled": true,
    "expires_on": "2026-12-31"
  },
  "expires_on": "2026-12-31"
}

enable_whois_privacy

为域启用whois隐私(域隐私)。这将购买并启用whois隐私(如果尚未启用)。

参数:

  • domain_name (必填):域名(例如“example.com”)

退货:

  • success:布尔值表示成功
  • domain:域名
  • status:状态消息(“already_enabled”或“enabled”)
  • message:人类可读的信息
  • whois_privacy:Whois隐私对象及其详细信息

例子:

{
  "domain_name": "example.com"
}

响应(已启用):

{
  "domain": "example.com",
  "status": "already_enabled",
  "message": "Whois privacy is already enabled for this domain",
  "whois_privacy": {
    "id": 123456,
    "domain_id": 789012,
    "enabled": true,
    "expires_on": "2026-12-31"
  }
}

响应(新启用):

{
  "success": true,
  "domain": "example.com",
  "status": "enabled",
  "message": "Whois privacy has been enabled for this domain",
  "whois_privacy": {
    "id": 123456,
    "domain_id": 789012,
    "enabled": true,
    "expires_on": "2026-12-31"
  }
}

注: 根据您的DNSimple计划和TLD,启用whois隐私可能会产生费用。

错误处理

当操作失败时,服务器以JSON格式返回结构化错误消息。常见错误包括:

  • 身份验证错误:缺少API令牌或令牌无效
  • 帐户错误:未找到帐户或帐户访问问题
  • 域错误:找不到或无法访问域
  • API错误:DNSimple API错误,包含状态代码和消息

错误响应示例:

{
  "error": "Failed to get account ID: Invalid API response: missing 'data' key"
}

安全说明

  • API令牌从不记录或暴露在错误消息中
  • 令牌可以存储在环境变量中, ~/.config/dnsimple-mcp/.env,或1Password
  • 所有API请求都使用HTTPS
  • 配置目录 .env 文件具有受限权限(仅限所有者读/写)
  • 环境变量是最安全的方法(不持久化到磁盘)

故障排除

  1. 身份验证失败

- 验证API令牌是否正确 - 检查令牌尚未过期 - 确保1Password集成配置正确 - 从以下位置获取新令牌:https://dnsimple.com/user

  1. 未找到帐户

- 验证DNSimple中是否存在帐户 - 检查帐户权限 - 确保API令牌具有帐户访问权限

  1. 未找到域名

- 验证DNSimple帐户中是否存在域 - 检查域拼写 - 确保域已通过DNSimple注册(用于注册商操作)

  1. DNS记录操作失败

- 验证域是否使用DNS简单名称服务器 - 检查记录名称和类型是否有效 - 确保TTL在有效范围内(60-604800秒)

备注

  • 服务器自动从DNSimple API中查找帐户ID
  • DNS记录更新将替换具有相同名称和类型的现有记录
  • 域名转移需要在当前注册商处解锁域名
  • 所有日期字段均以ISO格式字符串返回
  • 服务器以stdio模式运行,用于MCP通信

许可证

麻省理工学院

支持

-

目录标签

目录标签

PythonClaude云端部署域名管理本地部署DNS配置域名转移Whois隐私自动续订

支持客户端

ClaudeCursor

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

token

工具数量(toolCount,工具数)

12

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiotoken部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP