| name | cloudflare-master |
| version | 1.0.0 |
| description | Cloudflare operations — Workers deploy, DNS, KV, R2, D1, Pages, Tunnels via wrangler CLI and MCP API |
| author | ninetrix |
| tags | ["cloudflare","serverless","infrastructure"] |
| requires | {"tools":["wrangler","cloudflare","bash"]} |
| companion_tool | wrangler |
Cloudflare Master
Manage Cloudflare infrastructure using two tools: wrangler CLI for Workers development and the Cloudflare MCP for API operations (DNS, security, analytics).
When this applies
- Deploying or managing Cloudflare Workers
- Managing DNS records, zones, or SSL certificates
- Working with KV, R2, D1, or Queues
- Setting up Cloudflare Tunnels
- Deploying to Cloudflare Pages
- Querying analytics or audit logs
Auth
- wrangler: uses
CLOUDFLARE_API_TOKEN env var or wrangler login for OAuth
- MCP: authenticates via OAuth through the MCP server
Workers — wrangler CLI
wrangler init my-worker
wrangler dev
wrangler deploy
wrangler deploy --dry-run
wrangler tail
wrangler tail --status error
wrangler secret put SECRET_NAME
wrangler secret list
wrangler delete my-worker
wrangler rollback
wrangler versions list
wrangler deployments list
KV (Key-Value Store)
wrangler kv namespace list
wrangler kv namespace create MY_KV
wrangler kv key put --namespace-id <id> "key" "value"
wrangler kv key get --namespace-id <id> "key"
wrangler kv key list --namespace-id <id>
wrangler kv key delete --namespace-id <id> "key"
wrangler kv bulk put --namespace-id <id> data.json
R2 (Object Storage)
wrangler r2 bucket list
wrangler r2 bucket create my-bucket
wrangler r2 object get my-bucket/path/file.txt --file ./local.txt
wrangler r2 object put my-bucket/path/file.txt --file ./upload.txt
wrangler r2 object delete my-bucket/path/file.txt
D1 (SQL Database)
wrangler d1 list
wrangler d1 create my-db
wrangler d1 execute my-db --command "SELECT * FROM users LIMIT 10"
wrangler d1 execute my-db --file schema.sql
wrangler d1 export my-db --output backup.sql
Pages
wrangler pages project list
wrangler pages deploy ./dist
wrangler pages deployment list --project my-site
Tunnels
wrangler tunnel list
wrangler tunnel create my-tunnel
wrangler tunnel run my-tunnel
wrangler tunnel route dns my-tunnel sub.example.com
wrangler tunnel delete my-tunnel
MCP — Cloudflare API
Use the Cloudflare MCP for operations not covered by wrangler: DNS management, zone settings, firewall rules, analytics, audit logs. The MCP provides search() to find endpoints and execute() to call them.
Decision Rules
- If deploying Workers/Pages → use
wrangler CLI
- If managing DNS, zones, firewall, SSL → use Cloudflare MCP
- If need live logs →
wrangler tail
- If managing storage (KV/R2/D1) → use
wrangler CLI
- If querying analytics or audit logs → use Cloudflare MCP
- If setting up tunnels → use
wrangler tunnel
Do
- Use
--dry-run before first deploy to preview changes
- Stream logs with
wrangler tail after deploying to verify
- Use
wrangler secret for sensitive values (never hardcode)
- Check
wrangler versions list before rollback
Don't
- Deploy without
--dry-run first on unfamiliar projects (may overwrite production)
- Delete workers or tunnels without user confirmation (destructive, affects live traffic)
- Store secrets in
wrangler.toml (use wrangler secret put instead — wrangler.toml is committed to git)
- Run
wrangler d1 execute with destructive SQL (DROP/DELETE) without confirmation