mcpField
C
Cloudflare

Cloudflare

github.com/danielmiessler云与 DevOps19.7k97 次安装3 天前更新
代码仓库

关于 Cloudflare

Cloudflare 技能用于部署和管理 Workers、Pages 及相关服务,适合处理 Cloudflare 项目与账户操作的用户。它结合 Code Mode MCP 进行 API 查询与管理,并使用 Wrangler 执行部署和本地开发。

主要功能

  1. 01部署 Workers 与 Pages
  2. 02查询部署状态和日志
  3. 03管理 KV、R2、D1
  4. 04管理 DNS 并查看分析
  5. 05使用 Wrangler 本地开发

适用场景

  1. 01部署 Worker 或 Pages 项目
  2. 02排查部署问题
  3. 03查询 DNS、KV 或分析数据

MCP 相关

Cloudflare Code Mode MCP 服务通过 `search()` 和 `execute()` 提供 Cloudflare API 访问,可用于查询和管理 Workers、存储、DNS 及分析数据。Wrangler 用于部署和本地开发。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/danielmiessler/lifeos --skill cloudflare

安装后在 Claude Code 中输入/cloudflare确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

Workflows/
Query.md
Create.md
Troubleshoot.md

详细介绍

自定义

执行前,请检查以下位置是否存在用户自定义内容: ~/.claude/PAI/USER/SKILLCUSTOMIZATIONS/Cloudflare/

如果该目录存在,请加载并应用其中的任何 PREFERENCES.md、配置或资源。这些内容会覆盖默认行为。如果该目录不存在,请使用技能默认设置。

强制要求:语音通知(执行任何操作前必须完成)

调用此技能时,必须先发送此通知,然后才能执行其他任何操作。

  1. 发送语音通知:

    curl -s -X POST http://localhost:8888/notify \
      -H "Content-Type: application/json" \
      -d '{"message": "Running the WORKFLOWNAME workflow in the Cloudflare skill to ACTION"}' \
      > /dev/null 2>&1 &
    
  2. 输出文本通知:

    Running the **WorkflowName** workflow in the **Cloudflare** skill to ACTION...
    

此步骤不可省略。调用技能后,请立即执行此 curl 命令。

Cloudflare 技能

部署和管理 Cloudflare Workers、Pages 和服务。使用两种互补工具:

  • Code Mode MCP(主要用于 API 操作)— 使用 search() + execute() 查询 Worker、管理 KV/R2/D1、检查部署、DNS 和分析数据。约 1,069 个 token,而传统 MCP 需要 1.17M 个 token。
  • Wrangler(仅用于部署和开发)— 使用 wrangler deploy、wrangler dev、wrangler pages deploy 从本地文件部署。

双模式参考

操作工具原因
部署 Workerwrangler deploy需要本地文件和 wrangler.toml
部署 Pageswrangler pages deploy需要 dist/ 目录
本地开发wrangler dev本地服务
列出 WorkerMCP execute()API 查询,无需本地文件
检查部署状态MCP execute()API 查询
读取/写入 KVMCP execute()API 操作
管理 DNSMCP execute()API 操作
查看日志MCP execute()API 查询
检查 R2/D1/VectorizeMCP execute()API 操作
查看分析数据MCP execute()API 查询

工作流路由

执行工作流时,请直接输出以下通知:

Running the **WorkflowName** workflow in the **Cloudflare** skill to ACTION...
  • 创建 Worker 或 MCP 服务 → Workflows/Create.md
  • 排查部署问题 → Workflows/Troubleshoot.md
  • 查询 Cloudflare 状态(列出 Worker、检查 KV、DNS、分析数据)→ Workflows/Query.md

Code Mode MCP 参考

Cloudflare Code Mode MCP 服务(https://mcp.cloudflare.com/mcp)通过 2 个工具提供整个 Cloudflare API:

search() — 查找端点

按关键词查找 API 端点。不确定确切路径时使用。

// Example: Find all Workers-related endpoints
search("workers scripts")

// Example: Find KV namespace operations
search("KV namespace")

// Example: Find DNS record endpoints
search("DNS records")
execute() — 调用 API

直接执行任何 Cloudflare API 端点。通过 OAuth 自动处理身份验证。

// Example: List all Workers scripts
execute("GET /accounts/{account_id}/workers/scripts")

// Example: Read a KV value
execute("GET /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/values/{key_name}")

// Example: List DNS records
execute("GET /zones/{zone_id}/dns_records")
MCP 身份验证

Code Mode MCP 通过 OAuth 处理身份验证,无需令牌。首次使用时会提示你登录 Cloudflare。之后,身份验证信息会缓存。

快速参考

  • **Account ID:**通过 CF_ACCOUNT_ID 环境变量设置
  • Worker URL 格式:https://[worker-name].[your-subdomain].workers.dev

部署命令

Workers 部署
# Unset tokens that interfere with wrangler login-based auth
(unset CF_API_TOKEN && unset CLOUDFLARE_API_TOKEN && wrangler deploy)
Pages 部署

重要:所有环境令牌都缺少 Pages 权限。必须取消设置这些令牌才能使用 OAuth:

# ALWAYS unset tokens for Pages - OAuth login works, tokens don't
(unset CF_API_TOKEN && unset CLOUDFLARE_API_TOKEN && bunx wrangler pages deploy dist --project-name=PROJECT_NAME --commit-dirty=true)

重要说明

  • **Workers:**部署前取消设置 CF_API_TOKEN 和 CLOUDFLARE_API_TOKEN——它们会干扰基于 wrangler 登录的身份验证
  • **Pages:**取消设置所有令牌——没有任何 API 令牌拥有 Pages 权限。基于 OAuth 的 wrangler 登录是唯一可用的方法。
  • **API 查询:**使用 Code Mode MCP,而非手动调用 curl 或 fetch() 请求 api.cloudflare.com
  • **Wrangler 仅用于:**部署、开发、pages deploy 和本地配置

示例

示例 1:部署 Worker

User: "deploy the MCP server to Cloudflare"
-> Invokes CREATE workflow
-> Unsets env tokens, runs wrangler deploy
-> Verifies via MCP execute() that worker is live
-> "Deployed to https://mcp-server.[subdomain].workers.dev"

示例 2:查询 Cloudflare 状态

User: "list all my workers"
-> Invokes QUERY workflow
-> MCP search("workers scripts") to find endpoint
-> MCP execute("GET /accounts/{id}/workers/scripts")
-> Returns list of all deployed workers

示例 3:修复部署错误

User: "Cloudflare deploy is failing with auth error"
-> Invokes TROUBLESHOOT workflow
-> MCP execute() to check deployment status and logs
-> Identifies token interference
-> "Fixed - tokens were overriding OAuth. Redeployed successfully."

示例 4:检查 DNS 记录

User: "what DNS records does example.com have?"
-> Invokes QUERY workflow
-> MCP search("DNS records") + execute() to list records
-> Returns full DNS record table

评论

支持 Markdown