Porkbun DNS 🐷

io.github.major由 GitHub 账号 major 发布v1.1.2更新于 Oct 24, 2026

Manage DNS records, domains, DNSSEC, SSL certificates via MCP

发布方自己的服务:Porkbun (official)

概览

AI 生成的概览

让助手读取并在启用后修改 Porkbun 的 DNS 记录、域名、DNSSEC 和 SSL 证书。

可以做什么
封装 Porkbun DNS API,让助手可以列出、查询、创建、编辑和删除 DNS 记录,也支持按子域名和类型查询。还可列出域名、读取和更新域名服务器、管理 URL 转发规则、查询域名可用性与价格,并处理 DNSSEC 记录和获取 SSL 证书。内置提示词覆盖常见流程,如初始 DNS 配置、DNS 审计、邮件 DNS、服务器 IP 迁移和子域名创建。
适用场景
适合在 Porkbun 管理域名、希望助手无需登录网页控制台即可查看或修改 DNS、域名服务器、转发、DNSSEC 或证书的场景。适用于日常记录修改、迁移和审计;若 DNS 托管在其他服务商则用处不大。
运行要求
以本地 Python 包(pypi porkbun-mcp)运行,通常通过 uvx 启动,并在桌面 MCP 客户端中配置。需要 Porkbun API 密钥和密钥,通过环境变量 PORKBUN_API_KEY 和 PORKBUN_SECRET_KEY 提供,并需要访问 Porkbun API 的网络连接。
安装前请注意
PORKBUN_API_KEY 和 PORKBUN_SECRET_KEY 可控制你的 Porkbun 账户,并会保存在客户端配置中。写操作默认关闭,仅在设置 PORKBUN_GET_MUDDY 为 true 或传入 --get-muddy 参数后生效;启用后助手可创建、编辑、删除 DNS 记录、更改域名服务器,以及删除转发或 DNSSEC 记录。除非确实需要修改,否则保持只读模式。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Porkbun DNS 🐷,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

porkbun-mcp

MCP server for the Porkbun DNS API.

Manage DNS records, domains, DNSSEC, SSL certificates, and more via the Model Context Protocol.

[CI] [codecov] [PyPI version] [Python 3.13+] [License: MIT]

Configuration

Set your Porkbun API credentials as environment variables:

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

Get your API keys from the Porkbun API Access page.

Read-Only Mode (Default)

By default, porkbun-mcp runs in read-only mode for safety. Write operations (create, edit, delete) will return an error until explicitly enabled.

Enabling Write Operations

To let the pig get muddy and make changes:

Environment variable:

bash
export PORKBUN_GET_MUDDY=true

CLI flag:

bash
uvx porkbun-mcp --get-muddy

Usage

Run directly with uvx (no installation required):

bash
uvx porkbun-mcp

SSE transport

bash
uvx porkbun-mcp --transport sse

MCP Client Configuration

Claude Desktop

Add to ~/.config/claude/claude_desktop_config.json:

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

Note: Remove --get-muddy from args for read-only mode (recommended for safety).

Claude Code / Codex

Add to ~/.claude/settings.json:

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

VS Code

Add to .vscode/mcp.json in your workspace (or use MCP: Add Server command):

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

OpenCode

Add to your opencode.json configuration:

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

Available Tools

DNS

  • dns_list - List all DNS records for a domain
  • dns_get - Get a specific DNS record by ID
  • dns_get_by_name_type - Get DNS records by subdomain and type
  • dns_create - Create a new DNS record
  • dns_edit - Edit a DNS record by ID
  • dns_edit_by_name_type - Edit DNS records by subdomain and type
  • dns_delete - Delete a DNS record by ID
  • dns_delete_by_name_type - Delete DNS records by subdomain and type

Domains

  • domains_list - List all domains in your account
  • domains_get_nameservers - Get nameservers for a domain
  • domains_update_nameservers - Update nameservers for a domain
  • domains_get_url_forwards - Get URL forwarding rules
  • domains_add_url_forward - Add a URL forwarding rule
  • domains_delete_url_forward - Delete a URL forwarding rule
  • domains_check_availability - Check domain availability and pricing
  • domains_get_glue_records - Get glue records for a domain

DNSSEC

  • dnssec_list - List DNSSEC records for a domain
  • dnssec_create - Create a DNSSEC record
  • dnssec_delete - Delete a DNSSEC record

SSL

  • ssl_retrieve - Retrieve the SSL certificate bundle for a domain

Pricing

  • pricing_get - Get pricing for all available TLDs

Utility

  • ping - Test API connectivity and get your public IP

Prompts

Pre-defined workflows to guide common DNS operations:

  • dns_setup - Set up basic DNS for a new server (root A + www records)
  • dns_audit - Audit DNS configuration for issues (duplicates, missing email records, low TTLs)
  • email_dns_setup - Configure email DNS (MX, SPF, DKIM, DMARC)
  • update_server_ip - Update DNS records when migrating to a new server IP
  • subdomain_setup - Create A/CNAME records for a new subdomain

Development

bash
# Install dependenciesuv sync --dev
# Run all checksmake check
# Individual commandsmake lint       # ruff checkmake format     # ruff formatmake typecheck  # ty checkmake test       # pytest with coverage

License

MIT

来源:README.md,提交 8ff5e1d

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v1.1.2最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

其他 Porkbun 集成