mcpField
P
Porkbun DNS 🐷

Porkbun DNS 🐷

ローカル
github.com/majorクラウド・インフラ2321 週間前に更新

Porkbun DNS 🐷 について

Porkbun DNS は、Porkbun API を通じて DNS レコード、ドメイン、DNSSEC、SSL 証明書を管理する MCP サーバーです。既定では読み取り専用モードで動作し、書き込み操作は明示的に有効化する必要があるため、変更のリスクを抑えたい利用者に向いています。

主な機能

  1. 01DNS レコードの参照、作成、編集、削除
  2. 02ドメイン、ネームサーバー、URL 転送の管理
  3. 03DNSSEC レコードと SSL 証明書バンドルの取得
  4. 04既定の読み取り専用モードと書き込みの任意有効化
  5. 05DNS 操作向けの定義済みプロンプト

活用シーン

  1. 01新しいサーバー向けにルートの A レコードと www レコードを設定
  2. 02重複レコード、メールレコードの欠落、低い TTL を含む DNS 設定の監査
  3. 03サーバー移行時に IP 変更に合わせて DNS レコードを更新

MCP 対応

本プロジェクトは MCP サーバーであり、stdio または SSE トランスポート経由で、Porkbun の DNS、ドメイン、DNSSEC、SSL 関連のツールとプロンプトを MCP クライアントに公開します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"major-porkbun": {
"command": "uvx",
"args": [
"porkbun-mcp"
],
"env": {
"PORKBUN_API_KEY": "<PORKBUN_API_KEY>",
"PORKBUN_SECRET_KEY": "<PORKBUN_SECRET_KEY>",
"PORKBUN_GET_MUDDY": "<PORKBUN_GET_MUDDY>"
}
}
}
}
起動コマンドuvx porkbun-mcp
設定が必要な環境変数
PORKBUN_API_KEYシークレットPorkbun API key
PORKBUN_SECRET_KEYシークレットPorkbun secret key
PORKBUN_GET_MUDDYEnable write operations (default: false for read-only mode)

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypiporkbun-mcp1.1.2

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

porkbun-mcp

Porkbun DNS API 用の MCP サーバーです。

Model Context Protocol を通じて、DNS レコード、ドメイン、DNSSEC、SSL 証明書などを管理できます。

CI codecov PyPI version Python 3.13+ License: MIT

設定

Porkbun API の認証情報を環境変数として設定します。

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

API キーはPorkbun API Access ページで取得できます。

読み取り専用モード(デフォルト)

安全のため、porkbun-mcp はデフォルトで読み取り専用モードで動作します。書き込み操作 (作成、編集、削除)は、明示的に有効にするまでエラーを返します。

書き込み操作を有効にする

豚を泥遊びさせて、変更を加えられるようにするには、次の手順に従います。

環境変数:

export PORKBUN_GET_MUDDY=true

CLI フラグ:

uvx porkbun-mcp --get-muddy

使い方

uvx で直接実行します(インストールは不要です)。

uvx porkbun-mcp
SSE トランスポート
uvx porkbun-mcp --transport sse

MCP クライアントの設定

Claude Desktop

~/.config/claude/claude_desktop_config.json に追加します。

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

注: 読み取り専用モードにするには、args から --get-muddy を削除してください(安全のため推奨)。

Claude Code / Codex

~/.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
  • 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
  • dnssec_list - ドメインの DNSSEC レコードを一覧表示
  • dnssec_create - DNSSEC レコードを作成
  • dnssec_delete - DNSSEC レコードを削除
SSL
  • ssl_retrieve - ドメインの SSL 証明書バンドルを取得
価格
  • pricing_get - 利用可能なすべての TLD の価格を取得
ユーティリティ
  • ping - API 接続をテストし、パブリック IP を取得

プロンプト

一般的な DNS 操作をガイドする、事前定義済みのワークフローです。

  • dns_setup - 新しいサーバーの基本的な DNS(ルート A レコードと www レコード)を設定
  • dns_audit - 問題(重複、メールレコードの不足、TTL の短さ)がないか DNS 設定を監査
  • 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

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。