MCP server for managing Cloudflare Workers: deploy static sites and Worker scripts, manage versions, deployments, custom domains, and cron triggers
Server has 22 tools with explicit Zod schemas and descriptions. Naming follows verb_noun convention (list_, get_, deploy_, etc.). Most tools have 50-150 char descriptions, meeting baseline. However, parameter descriptions are inconsistent, some parameters lack descriptions entirely (e.g., 'bindings' array items in deploy_worker lack per-field docs). Output schemas are not documented in the source; return types are inferred from summarize functions but not formally specified. Error handling is minimal, no recovery guidance or error classification visible. Security is reasonable (no secrets in params), but composition could be tighter (e.g., deploy_static_site and deploy_worker overlap in responsibility).
Attach a custom domain to a Worker
Create a deployment routing traffic to one or two Worker versions
Create a new version of a Worker script without deploying it
Delete a Worker script
Deploy a static site to a Worker with asset serving
Deploy a Worker script with modules, bindings, and optional static assets
Detach a custom domain from a Worker
Output schemas not documented. Tools return summarized objects (summarizeWorker, summarizeDeployment, etc.) but the actual response structure is not visible in the source. LLMs cannot plan downstream tool calls without knowing what fields to expect.
Nested object parameters (modules, bindings, versions) lack per-field descriptions. The 'modules' array in deploy_worker and create_version has items with 'name', 'content', 'content_type' properties, but only 'content_type' has a description. LLMs cannot infer what 'name' should contain (filename? path?).
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 60 | 2026-07-28+ | v2 |
Get cron triggers (scheduled events) for a Worker script
Get details of a specific Worker version
Get a Worker's metadata (bindings, compatibility date/flags, placement, observability)
Download a Worker's code (service-worker or module-syntax scripts)
Check the health of the MCP server and Cloudflare API connectivity
List all deployments of a Worker script
List all versions of a Worker script
List custom domains attached to Workers
List all Worker scripts in the account
Query Workers Logs (telemetry) for a Worker script
Redeploy static assets to an existing Worker without changing code
Roll back a Worker to a previous version
Set or update cron triggers (scheduled events) for a Worker
Enable or disable the workers.dev subdomain for a Worker
Update a Worker's settings (bindings, compatibility date/flags, observability)
No error handling or recovery guidance. Tools do not document what errors can occur, whether they are retryable, or what the LLM should do next. E.g., deploy_worker could fail if a binding references a non-existent KV namespace, but there is no guidance on how to recover.
Destructive operations (delete_worker) lack confirmation or dry-run support. An agent could accidentally delete a production Worker. No mention of a force flag's implications or a confirmation step.
Overlapping tool responsibilities. deploy_static_site and deploy_worker both deploy code; redeploy_assets and deploy_static_site both handle assets. LLMs may struggle to choose between them. Consider consolidating or clarifying when each is appropriate.