DNS管理服务

通过Model Context Protocol管理DNS记录、域名、DNSSEC和SSL证书的服务。

  • by major
  • Python
  • 本地部署
  • 23 星标
  • 更新于
在 GitHub 查看 major/porkbun-mcp

使用说明

porkbun mcp

MCP服务器 波克本 DNS API。

通过模型上下文协议管理DNS记录、域、DNSSEC、SSL证书等。

配置

将您的Porkbun API凭据设置为环境变量:

export PORKBUN_API_KEY="pk1_..."
export PORKBUN_SECRET_KEY="sk1_..."

从获取API密钥 Porkbon API访问页面.

只读模式(默认)

默认情况下,porkbun mcp运行 只读模式 为了安全。写入操作 (创建、编辑、删除)将返回错误,直到明确启用。

启用写入操作

让猪变得泥泞并做出改变:

环境变量:

export PORKBUN_GET_MUDDY=true

CLI标志:

uvx porkbun-mcp --get-muddy

用法

直接与 uvx (无需安装):

uvx porkbun-mcp

SSE运输

uvx porkbun-mcp --transport sse

MCP客户端配置

克劳德桌面

添加到 ~/.config/claude/claude_desktop_config.json:

{
  "mcpServers": {
    "porkbun": {
      "command": "uvx",
      "args": ["porkbun-mcp", "--get-muddy"],
      "env": {
        "PORKBUN_API_KEY": "pk1_...",
        "PORKBUN_SECRET_KEY": "sk1_..."
      }
    }
  }
}

注: 移除 --get-muddy 对于只读模式,建议使用args(出于安全考虑)。

克劳德法典

添加到 ~/.claude/settings.json:

{
  "mcpServers": {
    "porkbun": {
      "command": "uvx",
      "args": ["porkbun-mcp", "--get-muddy"],
      "env": {
        "PORKBUN_API_KEY": "pk1_...",
        "PORKBUN_SECRET_KEY": "sk1_..."
      }
    }
  }
}

VS Code

添加到 .vscode/mcp.json 在您的工作空间中(或使用 MCP: Add Server 命令):

{
  "servers": {
    "porkbun": {
      "command": "uvx",
      "args": ["porkbun-mcp", "--get-muddy"],
      "env": {
        "PORKBUN_API_KEY": "pk1_...",
        "PORKBUN_SECRET_KEY": "sk1_..."
      }
    }
  }
}

OpenCode

添加到您的 opencode.json 配置:

{
  "mcp": {
    "porkbun": {
      "type": "local",
      "command": ["uvx", "porkbun-mcp", "--get-muddy"],
      "environment": {
        "PORKBUN_API_KEY": "pk1_...",
        "PORKBUN_SECRET_KEY": "sk1_..."
      }
    }
  }
}

可用工具

域名系统

  • dns_list -列出域的所有DNS记录
  • dns_get -按ID获取特定DNS记录
  • dns_get_by_name_type -按子域和类型获取DNS记录
  • dns_create -创建新的DNS记录
  • dns_edit -按ID编辑DNS记录
  • dns_edit_by_name_type -按子域和类型编辑DNS记录
  • dns_delete -按ID删除DNS记录
  • dns_delete_by_name_type -按子域和类型删除DNS记录

领域

  • domains_list -列出您帐户中的所有域
  • domains_get_nameservers -获取域的名称服务器
  • domains_update_nameservers -更新域的名称服务器
  • domains_get_url_forwards -获取URL转发规则
  • domains_add_url_forward -添加URL转发规则
  • domains_delete_url_forward -删除URL转发规则
  • domains_check_availability -检查域名可用性和定价
  • domains_get_glue_records -获取域的粘合记录

域名系统安全扩展

  • dnssec_list -列出域的DNSSEC记录
  • dnssec_create -创建DNSSEC记录
  • dnssec_delete -删除DNSSEC记录

安全套接层

  • ssl_retrieve -检索域的SSL证书包

定价

  • pricing_get -获取所有可用TLD的定价

效用

  • ping -测试API连接并获取您的公共IP

提示

指导常见DNS操作的预定义工作流:

  • dns_setup -为新服务器设置基本DNS(根a+www记录)
  • dns_audit -审核DNS配置是否存在问题(重复、缺少电子邮件记录、TTL低)
  • email_dns_setup -配置电子邮件DNS(MX、SPF、DKIM、DMARC)
  • update_server_ip -迁移到新服务器IP时更新DNS记录
  • subdomain_setup -为新子域创建A/CNAME记录

发展

# Install dependencies
uv sync --dev

# Run all checks
make check

# Individual commands
make lint       # ruff check
make format     # ruff format
make typecheck  # ty check
make test       # pytest with coverage

许可证

麻省理工学院