mcpField
C
cloudflare-dns

cloudflare-dns

github.com/makerjackieクラウド・DevOps146 回インストール36 週間前に更新
リポジトリ

cloudflare-dns について

Cloudflare DNS を管理するためのスキルです。レコードの確認、作成、更新に加え、検証手順と API 認証情報の保護策を備えています。ドメインレコードや Pages のドメインバインディングを管理する人向けです。

主な機能

  1. 01変更前のレコード確認
  2. 02DNS レコードの作成と更新
  3. 03DNS と HTTP 応答の検証
  4. 04Pages ドメイン状態の確認
  5. 05最小権限のトークンスコープ

活用シーン

  1. 01ドメインの DNS レコード更新
  2. 02カスタムドメインの Pages への紐付け
  3. 03DNS または認証エラーの調査

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/makerjackie/jackie-skills-starter --skill cloudflare-dns

インストール後、Claude Code で/cloudflare-dnsを入力して読み込まれたか確認します。

詳細

Cloudflare DNS

クイックスタート

  1. 対象を明確にします:
    • ドメイン/ホスト(skills.01mvp.com)
    • レコードタイプ(A/AAAA/CNAME/TXT)
    • 値
    • プロキシのオン/オフ
  2. 書き込み操作の前に、認証の事前確認を実行します。
  3. 冪等な変更を実行します(先に既存のレコードを照会してから、作成/更新します)。
  4. DNS ルックアップ+HTTP チェック+(必要に応じて)Pages ドメインのステータスで確認します。

初回使用時の認証ゲート(必須)

初回の DNS 書き込み前に、トークンを確認します:

zsh -lic 'echo ${CLOUDFLARE_API_TOKEN:+SET}'

空の場合は処理を停止し、まずトークンを設定するようユーザーに促します。

次の形式で促してください:

  • Cloudflare API Token の設定をお手伝いしますが、まずトークンをご用意ください(wrangler OAuth ではありません)。
  • トークンに必要な最小権限:
    • Zone -> DNS -> Edit
    • Zone -> Zone -> Read
    • Pages ドメインのステータスを確認する場合は、次も追加します:Account -> Cloudflare Pages -> Edit
  • Zone Resources では対象ドメインのみを選択します(最小権限の原則)。
  • 設定後に実行します:
export CLOUDFLARE_API_TOKEN='YOUR_TOKEN'

任意の永続的な設定:

echo "export CLOUDFLARE_API_TOKEN='YOUR_TOKEN'" >> ~/.zshrc
source ~/.zshrc

標準的な実行手順

1) 現在の DNS レコードを読み取る
python - <<'PY'
import json, os, urllib.request

token = os.environ['CLOUDFLARE_API_TOKEN']
zone_id = '<ZONE_ID>'
name = 'skills.01mvp.com'
url = f'https://api.cloudflare.com/client/v4/zones/{zone_id}/dns_records?name={name}'
req = urllib.request.Request(url, headers={'Authorization': f'Bearer {token}'})
print(json.dumps(json.load(urllib.request.urlopen(req)), ensure_ascii=False, indent=2))
PY
2) レコードを作成/更新する
  • レコードが見つからない場合:作成します。
  • レコードは存在するが、値/プロキシ設定が一致しない場合:更新します。
  • すでに正しい場合:「no-op」と報告します。
3) Pages のカスタムドメインをバインドする(必要な場合)
  • ドメインが Pages プロジェクトに追加されていることを確認します。
  • 追加されていない場合は、まずバインディングを作成し、次に DNS が <project>.pages.dev を指していることを確認します。
4) 検証
dig +short CNAME skills.01mvp.com
dig +short skills.01mvp.com
curl -I https://skills.01mvp.com

Pages を検証するには、Pages API/wrangler でドメインのステータスも確認します。

安全ルール

  • 書き込み前に必ず照会します(確認せずに上書きしないでください)。
  • 最小権限のトークンスコープを優先します。
  • 出力にトークン全体を表示しないでください。
  • 変更したレコードの詳細(名前、タイプ、内容、プロキシ設定、タイムスタンプ)を正確に報告します。
  • API が認証エラーを返した場合、むやみに再試行せず、不足しているスコープを明示してユーザーに伝えます。

コメント