关于 OnlyDNS MCP Server
OnlyDNS MCP Server 是用于通过 OnlyDNS 账户管理 DNS 的官方 MCP 服务。它为 AI Agent 和其他 MCP 客户端提供区域、记录、DNSSEC 及 TSIG 密钥配置工具。
主要功能
- 01列出域名并创建 DNS 区域
- 02查询、新增、更新和删除 DNS 记录
- 03批量替换区域记录
- 04查看和配置 DNSSEC
- 05管理 TSIG 密钥及域名权限
适用场景
- 01检查域名的 DNS 记录
- 02更新记录或替换整个区域的记录集
- 03启用或检查 DNSSEC 签名
- 04配置用于区域传送和更新的 TSIG 权限
MCP 相关
该服务向 MCP 客户端提供 OnlyDNS 域名、DNS 记录、DNSSEC 和 TSIG 管理工具。使用时需要 OnlyDNS API Bearer Token。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
OnlyDNS MCP 服务(@onlydns/mcp)
OnlyDNS 的官方模型上下文协议(MCP)服务,基于官方 TypeScript SDK(@onlydns/sdk)构建。让 AI Agent(例如 Claude Desktop、Cursor、Junie、Windsurf 和 Claude Code)能够直接通过你的 OnlyDNS 账户检查和管理 DNS 区域、DNS 记录、DNSSEC 配置和 TSIG 密钥。
功能
- 🌐 域名管理:列出所有已管理的域名并创建新的 DNS 区域。
- 📝 DNS 记录操作:
list_records:查询 DNS 记录,可按类型(A、AAAA、CNAME、MX、TXT、SRV、CAA 等)或主机名筛选。add_record:创建新记录,或将值追加到现有记录集中,并自动规范化域名。update_record:修改现有 DNS 记录并更新 TTL。delete_record:删除指定的记录值或整个记录集。set_records:批量替换整个区域的记录集。
- 🔐 DNSSEC 管理:检查 DNSSEC 状态、获取 DS/DNSKEY 记录,以及启用或禁用 DNSSEC 签名。
- 🔑 TSIG 密钥:生成和管理 TSIG 密钥,用于辅助 DNS 区域传送(AXFR)和 RFC 2136 动态更新。
安装与快速开始
1. 一键桌面安装(MCPB Bundle)
直接从 GitHub Releases 页面下载 onlydns-mcp.mcpb。兼容的桌面客户端(例如 Claude Desktop)支持一键安装,并通过安全的设置对话框配置你的 ONLYDNS_API_TOKEN。
2. 使用 npx(无需安装)
你可以直接使用 npx 运行该服务:
export ONLYDNS_API_TOKEN="your_onlydns_api_token"
npx -y @onlydns/mcp
3. 全局安装
npm install -g @onlydns/mcp
配置
该服务需要 OnlyDNS API Bearer Token。
环境变量
| 变量 | 说明 | 默认值 |
|---|---|---|
ONLYDNS_API_TOKEN | 你的 OnlyDNS API Bearer Token(必填) | - |
ONLYDNS_API_BASE_URL | OnlyDNS REST API 基础 URL | https://api.onlydns.com/v1 |
客户端集成示例
Claude Desktop
将以下内容添加到你的 claude_desktop_config.json:
macOS:~/Library/Application Support/Claude/claude_desktop_config.json
Windows:%APPDATA%\Claude\claude_desktop_config.json
Linux:~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"onlydns": {
"command": "npx",
"args": ["-y", "@onlydns/mcp"],
"env": {
"ONLYDNS_API_TOKEN": "YOUR_ONLYDNS_BEARER_TOKEN"
}
}
}
}
Cursor(或 Windsurf / Claude Code)
添加到你的 MCP 设置或 .cursor/mcp.json:
{
"mcpServers": {
"onlydns": {
"command": "npx",
"args": ["-y", "@onlydns/mcp"],
"env": {
"ONLYDNS_API_TOKEN": "YOUR_ONLYDNS_BEARER_TOKEN"
}
}
}
}
可用的 MCP 工具
🌐 域名
list_domains(limit?, offset?):列出账户中的所有域名。create_domain(domainName):为域名创建新的 DNS 区域。
📝 DNS 记录
list_records(domainName, type?, name?):列出域名的 DNS 记录,可选筛选条件。add_record(domainName, name, type, value, ttl?):添加/追加 DNS 记录(例如A、CNAME、MX、TXT、URL、PROXY)。update_record(domainName, name, type, value, ttl?):替换记录类型对应的值和/或 TTL。delete_record(domainName, name, type, value?):删除记录或指定的值。set_records(domainName, records):批量替换区域的所有记录。
🔐 DNSSEC
get_dnssec(domainName):获取 DNSSEC 状态和密钥(DS、DNSKEY)。enable_dnssec(domainName):为区域启用 DNSSEC 签名。disable_dnssec(domainName):禁用 DNSSEC 签名。
🔑 TSIG 密钥
list_tsig_keys():列出账户中的所有 TSIG 密钥。get_tsig_key(keyName):获取 TSIG 密钥详情。create_tsig_key(algorithm?):生成新的 TSIG 密钥(hmac-sha256、hmac-sha512等)。get_domain_tsig(domainName):获取域名上配置的 TSIG 密钥和权限。configure_domain_tsig(domainName, keyName, allowAxfr, allowDnsUpdate, subdomains?):为域名配置 AXFR、DDNS 权限,以及可选的子域名限制。remove_domain_tsig(domainName):移除域名上的所有 TSIG 密钥。
开发与测试
# Clone and install dependencies
git clone https://github.com/Onlydns/onlydns-mcp.git
cd onlydns-mcp
npm install
# Run unit tests
npm test
# Build TypeScript
npm run build
# Run locally in development
npm run dev
许可证
MIT © 2026 OnlyDNS
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。