mcpField
C
Cloudflare MCP Pro

Cloudflare MCP Pro

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

Cloudflare MCP Pro について

Cloudflare MCP Proは、ローカルのstdioサーバーを通じてCloudflare REST API v4の操作をMCPクライアントに公開します。DNS、Workers、ストレージ、セキュリティなどのツールをまとめ、変更操作には確認用プレビューを設けています。

主な機能

  1. 01Cloudflare REST API v4の操作
  2. 02DNS・Workers・ストレージのツール
  3. 03セキュリティ・メール・分析のツール
  4. 04変更操作に人間の確認
  5. 05ページネーションとAPIエラー処理

活用シーン

  1. 01DNSレコードの確認と管理
  2. 02Workersリソースのデプロイや管理
  3. 03Cloudflareのセキュリティ設定の確認
  4. 04変更適用前の操作プレビュー

MCP 対応

ローカルstdioのMCPサーバーとして、Cloudflareのアカウントやゾーンを扱う69種類のツールを提供します。変更系ツールは、confirm: trueを指定するまでプレビューを返します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"helbertparanhos-cloudflare-mcp-pro": {
"command": "npx",
"args": [
"-y",
"cloudflare-mcp-pro"
],
"env": {
"CLOUDFLARE_API_TOKEN": "<CLOUDFLARE_API_TOKEN>",
"CLOUDFLARE_ACCOUNT_ID": "<CLOUDFLARE_ACCOUNT_ID>",
"CLOUDFLARE_API_BASE": "<CLOUDFLARE_API_BASE>"
}
}
}
}
起動コマンドnpx -y cloudflare-mcp-pro
設定が必要な環境変数
CLOUDFLARE_API_TOKENシークレットCloudflare API token from dash.cloudflare.com/profile/api-tokens
CLOUDFLARE_ACCOUNT_IDDefault account ID used when a tool needs an account and you don't pass account_id
CLOUDFLARE_API_BASEOverride the API base URL (defaults to https://api.cloudflare.com/client/v4)

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

パッケージ
npmcloudflare-mcp-pro1.1.0

ツール

69

掲載時のツール一覧 · 2 週間前に更新

このツールにパラメーターはありません。

詳細

Cloudflare MCP Pro ☁️

Cloudflare REST API v4 用の MCP サーバー — DNS、Zones、Workers、KV、R2、D1、Pages、Queues、Tunnels、SSL、WAF、Email Routing、Logpush、Workers AI にわたる 69 個のツールを、API トークンで認証する 単一のローカル stdio サーバーで利用できます。

npm version License: MIT GitHub Stars GitHub Forks GitHub Issues Glama Quality

TypeScript Node.js MCP Claude Code Cursor Claude Desktop

Instagram YouTube LinkedIn Buy Me A Coffee Strat Academy

公式のCloudflare MCP(OAuthベースの個別のリモートサーバー13個)とは異なり、cloudflare-mcp-pro はローカルでstdio経由により動作し、単一の APIトークンで認証します。また、よく使われるCloudflareの操作を、一貫した verb_object 形式のツール名で単一のサーバーにまとめているため、Claude Code、CI、スクリプトによる自動化に最適です。

機能

  • DNS — レコードの一覧表示/作成/更新/削除、DNSSEC、BIND ゾーンファイルへのエクスポート
  • ゾーン — 一覧表示/取得/作成/削除、設定(SSL モード、HTTPS、最小 TLS など)、キャッシュのパージ、GraphQL 分析
  • Workers — デプロイ(ES モジュール)、ルート、シークレット、Cron トリガー、一覧表示/取得/削除
  • KV / R2 / D1 — 名前空間とキーの CRUD、バケット管理、データベースと SQL クエリ
  • Pages / Queues / Tunnels — プロジェクトの一覧表示/取得、キュー管理、トンネルの検査
  • セキュリティ — WAF ルールセット、IP/ASN/国別のアクセスルール、ページルール、SSL 証明書パック、カスタムホスト名(SaaS)、Turnstile ウィジェット
  • メールルーティング — ルールと宛先アドレス
  • Logpush — ジョブの一覧表示/作成(ゾーンまたはアカウントのスコープ)
  • Workers AI — モデルカタログと推論(テキスト生成、埋め込み、分類)
  • 人間の承認ゲート — 変更を行うすべてのツールで confirm: true が必要です。指定しない場合、ツールは実行せず、代わりに実行されないプレビュー(シークレットはマスキングされます)を返します(下記参照)
  • MCP アノテーション — すべてのツールに readOnly/destructive/idempotent のヒントが付与されており、クライアントが危険なアクションを制御できます
  • 自動ページネーション — 一覧表示ツールで fetch_all: true を指定すると、すべてのページを取得します
  • 単一の API トークン認証、自動再試行とレート制限(429/5xx)への対応、実行可能なエラーメッセージ

インストール

npm install
npm run build

公開後は、次のコマンドで直接実行することもできます。

npx -y cloudflare-mcp-pro

設定

.env.example を .env にコピーし、次の項目を入力します。

変数必須説明
CLOUDFLARE_API_TOKEN✅https://dash.cloudflare.com/profile/api-tokens から取得した API トークン
CLOUDFLARE_ACCOUNT_ID任意ツールに account_id が渡されない場合に使用するデフォルトのアカウント ID
CLOUDFLARE_API_BASE任意API のベース URL を上書きします

トークンのスコープは、使用する機能によって異なります。例:Zone:Read、DNS:Edit、Workers Scripts:Edit、Workers KV Storage:Edit、Workers R2 Storage:Edit、D1:Edit、Pages:Edit、Account Analytics:Read。トークンが機能することを確認するには、verify_token ツールを実行してください。

テスト

自動テストスイートを実行します(ネットワークは使用しません。fetch はモックされています)。

npm test

人間の承認ゲート、シークレットのマスキング、セキュリティ検証(16 進数 ID、パスセグメントのエンコード、モデル ID の許可リスト、パージの相互排他、分析の時間単位への整列)、API クライアント(クエリのシリアライズ、429 再試行、エラーマッピング、ページネーションと上限設定、GraphQL の非 JSON ガード)、Zod→JSON Schema コンバーターをテストします。

MCP Inspector を使った対話型テスト:

npx @modelcontextprotocol/inspector dist/index.js

Claude Code に追加

.claude/settings.json の mcpServers に追加します。

{
  "mcpServers": {
    "cloudflare-mcp-pro": {
      "command": "node",
      "args": ["projects/cloudflare-mcp-pro/dist/index.js"],
      "env": {
        "CLOUDFLARE_API_TOKEN": "your-token",
        "CLOUDFLARE_ACCOUNT_ID": "your-account-id"
      }
    }
  }
}

Claude Desktop に追加

  • Mac: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "cloudflare-mcp-pro": {
      "command": "node",
      "args": ["/absolute/path/projects/cloudflare-mcp-pro/dist/index.js"],
      "env": {
        "CLOUDFLARE_API_TOKEN": "your-token",
        "CLOUDFLARE_ACCOUNT_ID": "your-account-id"
      }
    }
  }
}

人間の承認ゲート

変更を行うすべてのツール(create_*、update_*、delete_*、deploy_*、put_*、edit_*、purge_cache、query_d1、run_ai など)には、サーバー側でゲートが設けられています。読み取り専用ツール(list_*、get_*、verify_token、export_dns_records、分析)には、ゲートは設けられていません。

  • 変更を行うツールを confirm: true なしで呼び出すと、ツール、リスクレベル、引数(シークレットはマスキングされます)を説明する confirmation_required プレビューが返され、実行はされません。
  • 人間が承認した後、同じツールを "confirm": true を付けて再度呼び出すと、実際に実行されます。

このゲートは MCP クライアントにかかわらずサーバーで適用され、Claude Code などの対応クライアントで人間に確認を促す MCP annotations(destructiveHint)と併用できます。Worker のシークレット text などのシークレット値はプレビューでマスキングされ、エラーメッセージにも表示されません。

// 1) preview (no confirm) → nothing happens
delete_zone { "zone_id": "..." }
// → { "status": "confirmation_required", "risk": "DESTRUCTIVE — ...", ... }

// 2) after human approval
delete_zone { "zone_id": "...", "confirm": true }   // actually deletes

ツール(69)

ツールは fetch_all: true を指定すると、ページネーションをたどってすべて取得できます。変更を伴うツールでは confirm: true を指定してください(上記のゲートを参照)。各ツールは MCP アノテーション(readOnlyHint / destructiveHint / idempotentHint)を公開します。

アカウント — verify_token、list_accounts

ゾーンと設定 — list_zones、get_zone、create_zone、delete_zone、purge_cache、get_zone_analytics、get_zone_setting、update_zone_setting

DNS — list_dns_records、create_dns_record、update_dns_record、delete_dns_record、get_dnssec、edit_dnssec、export_dns_records

Workers — list_workers、get_worker、deploy_worker、delete_worker、list_worker_routes、create_worker_route、delete_worker_route、put_worker_secret、delete_worker_secret、update_worker_cron

KV — list_kv_namespaces、create_kv_namespace、kv_list_keys、kv_get、kv_put、kv_delete

R2 — list_r2_buckets、create_r2_bucket、delete_r2_bucket

D1 — list_d1_databases、create_d1_database、query_d1

Pages — list_pages_projects、get_pages_project

WAFとファイアウォール — list_firewall_rulesets、get_ruleset、list_access_rules、create_access_rule、delete_access_rule

ページルール — list_page_rules、create_page_rule、delete_page_rule

SSL/TLS — list_certificate_packs、get_ssl_verification、order_certificate_pack

カスタムホスト名(SaaS) — list_custom_hostnames、create_custom_hostname、delete_custom_hostname

Email Routing — list_email_rules、create_email_rule、list_email_destinations

Queues — list_queues、create_queue、delete_queue

Tunnels — list_tunnels、get_tunnel

Turnstile — list_turnstile_widgets、create_turnstile_widget

Workers AI — list_ai_models、run_ai

Logpush — list_logpush_jobs、create_logpush_job

著者

Helbert Paranhos / Strat Academy — stratacademy.com.br

ライセンス

MIT — LICENSEを参照してください。

コメント

MCP は初めてですか?

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

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