mcpField
C
Cloudflare MCP Pro

Cloudflare MCP Pro

本地服务
github.com/helbertparanhos云与基础设施37 周前更新

关于 Cloudflare MCP Pro

Cloudflare MCP Pro 是通过本地 stdio 服务向 MCP 客户端开放 Cloudflare REST API v4 操作的项目。它整合 DNS、Workers、存储、安全等服务的工具,并为修改操作提供确认预览。

主要功能

  1. 01Cloudflare REST API v4 操作
  2. 02DNS、Workers 和存储工具
  3. 03安全、邮件与分析工具
  4. 04修改操作需人工确认
  5. 05分页和 API 错误处理

适用场景

  1. 01检查和管理 DNS 记录
  2. 02部署或管理 Workers 资源
  3. 03查看 Cloudflare 安全设置
  4. 04应用更改前预览操作

MCP 相关

本地 stdio MCP 服务提供 69 种 Cloudflare 账户和区域操作工具。修改类工具会先返回预览,传入 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 官方提供的方案(13 个独立的远程、基于 OAuth 的服务)不同,cloudflare-mcp-pro 通过 stdio 在本地运行,使用单个 API 令牌进行身份验证,并将最常用的 Cloudflare 操作整合到一个服务中,工具名称统一采用 verb_object 格式——非常适合 Claude Code、CI 和脚本自动化。

功能

  • DNS — 列出/创建/更新/删除记录、DNSSEC、导出 BIND 区域文件
  • 区域 — 列出/获取/创建/删除,设置(SSL 模式、HTTPS、最低 TLS 版本等)、清理缓存、GraphQL 分析
  • Workers — 部署(ES 模块)、路由、机密、cron 触发器、列出/获取/删除
  • KV / R2 / D1 — 命名空间 + 键的增删改查、存储桶管理、数据库 + SQL 查询
  • Pages / Queues / Tunnels — 列出/获取项目、队列管理、隧道检查
  • 安全 — WAF 规则集、IP/ASN/国家访问规则、页面规则、SSL 证书包、自定义主机名(SaaS)、Turnstile 小组件
  • 电子邮件路由 — 规则 + 目标地址
  • Logpush — 列出/创建作业(按区域或账户范围)
  • Workers AI — 模型目录 + 推理(文本生成、嵌入、分类)
  • 人工审批关卡 — 每个变更工具都需要 confirm: true;没有此参数时,工具会返回不会执行操作的预览(并隐藏机密),而不会执行操作(见下文)
  • MCP 注释 — 每个工具都带有只读/破坏性/幂等提示,客户端可据此拦截危险操作
  • 自动分页 — 列表工具中的 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

测试涵盖人工审批关卡、机密隐藏、安全验证(十六进制 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 客户端为何,该关卡都会在服务端强制执行,并与 MCP annotations(destructiveHint)协同工作,在 Claude Code 等兼容客户端中提示人工审批。机密值(例如 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

队列 — list_queues、create_queue、delete_queue

隧道 — 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。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。