Cloudflare logo
Network & Infrastructure
Live

Cloudflare MCP server

DNS, WAF, Workers and analytics -- scoped to the zones you explicitly authorise.

Tools
27
Read-only
14
Write
13
Off by default
Destructive
7
Flagged distinctly
What it does

Cloudflare through an assistant

A Cloudflare token usually reaches every domain on the account. Here you pick which zones a connection may touch, and that list is checked server-side before any tool runs. An assistant can read DNS records, zone settings, WAF rulesets, Worker scripts and routes, and pull traffic, DNS and security-event analytics. Every write is opt-in; deleting a record or rule, purging cache, or deploying a Worker over live code needs a confirmation as well.

  • Zones, DNS records and zone settings for the domains you authorise
  • WAF custom rules via the modern Rulesets API
  • Worker scripts, routes and cron triggers
  • Traffic, DNS query and security-event analytics
  • Create, update and delete DNS records and WAF rules (opt-in)
  • Deploy Worker scripts and purge cache (opt-in, confirmation required)
Ask your assistant

What people actually ask

Real questions, answered from live Cloudflare data.

What does the DNS for this domain currently point at?

cloudflare_list_dns_recordscloudflare_get_zone

How much traffic did we block at the WAF yesterday, and where from?

cloudflare_get_security_eventscloudflare_get_zone_analytics

Which Workers are deployed, and what routes are attached to them?

cloudflare_list_workers_scriptscloudflare_list_workers_routes
Tool catalogue

27 Cloudflare tools

Grouped by what they touch. Every tool is individually toggleable — you expose only what you want.

Workers

10 tools5 read-only · 5 write

Showing 10 of 10 tools

  • cloudflare_create_workers_route
    Write

    Bind a URL pattern (e.g. 'sub.example.com/*') in this zone to a Worker script.

  • cloudflare_delete_workers_route
    Write
    Destructive

    Remove a route binding. Requests matching its pattern will stop reaching the Worker.

  • cloudflare_delete_workers_script
    Write
    Destructive

    Permanently delete a Worker script. Any routes still pointing at it will start failing.

  • cloudflare_deploy_workers_script
    Write
    Destructive

    Upload/overwrite a Worker script's live code. This takes effect immediately with no rollback -- confirm the script name and content are correct before calling.

  • cloudflare_get_workers_cron_triggers
    Read-only

    Get a Worker script's cron trigger schedule.

  • cloudflare_get_workers_script_content
    Read-only

    Get a Worker script's raw source code. This is not structured JSON -- large scripts may be truncated by the MCP client transport; prefer cloudflare_get_workers_script_metadata when source isn't needed.

  • cloudflare_get_workers_script_metadata
    Read-only

    Get a Worker script's metadata (size, modified date, usage model). Does not return source code.

  • cloudflare_list_workers_routes
    Read-only

    List URL-pattern-to-script route bindings for a zone.

  • cloudflare_list_workers_scripts
    Read-only

    List Worker scripts in this connection's account.

  • cloudflare_update_workers_cron_triggers
    Write

    Replace a Worker script's full cron trigger schedule (this is a full replace, not an incremental add).

Dns

6 tools3 read-only · 3 write

Showing 6 of 6 tools

  • cloudflare_create_dns_record
    Write

    Create a DNS record in a zone.

  • cloudflare_delete_dns_record
    Write
    Destructive

    Permanently delete a DNS record. This is destructive -- confirm the record_id first with cloudflare_get_dns_record.

  • cloudflare_get_dns_analytics
    Read-only

    DNS query analytics for a zone over a date range: query volume by type and response code.

  • cloudflare_get_dns_record
    Read-only

    Get a single DNS record by ID.

  • cloudflare_list_dns_records
    Read-only

    List DNS records for a zone, optionally filtered by type or name.

  • cloudflare_update_dns_record
    Write

    Update an existing DNS record.

Firewall

4 tools1 read-only · 3 write

Showing 4 of 4 tools

  • cloudflare_create_firewall_rule
    Write

    Add a rule to a zone's custom WAF ruleset. `expression` uses Cloudflare's Wireshark-inspired rules language, e.g. `(http.request.uri.path contains "/admin") and not ip.src in {1.2.3.4}`.

  • cloudflare_delete_firewall_rule
    Write
    Destructive

    Permanently remove a rule from a zone's custom WAF ruleset. Confirm rule_id first with cloudflare_get_firewall_ruleset.

  • cloudflare_get_firewall_ruleset
    Read-only

    Read a zone's custom WAF ruleset, including every rule in it (expression, action, enabled state).

  • cloudflare_update_firewall_rule
    Write

    Update an existing rule in a zone's custom WAF ruleset. Confirm rule_id first with cloudflare_get_firewall_ruleset.

Analytics

2 tools2 read-only · 0 write

Showing 2 of 2 tools

  • cloudflare_get_security_events
    Read-only

    Recent WAF/firewall events for a zone: what was blocked/challenged/logged, and by which rule.

  • cloudflare_get_zone_analytics
    Read-only

    Traffic analytics for a zone over a date range: requests, bandwidth, threats blocked, cached vs. uncached.

Zones

2 tools2 read-only · 0 write

Showing 2 of 2 tools

  • cloudflare_get_zone
    Read-only

    Get a zone's status, plan, and name servers.

  • cloudflare_list_zones
    Read-only

    List the zones (domains) visible to this connection's API token.

Zone settings

2 tools1 read-only · 1 write

Showing 2 of 2 tools

  • cloudflare_get_zone_settings
    Read-only

    Bulk-read all of a zone's settings (SSL mode, security level, cache level, etc.).

  • cloudflare_update_zone_setting
    Write
    Destructive

    Update one zone setting. Only a vetted allowlist of settings can be changed through this tool -- a wrong SSL mode or security level can take a zone offline, so this deliberately does not accept arbitrary Cloudflare setting IDs.

More tools

1 tool0 read-only · 1 write

Showing 1 of 1 tools

  • cloudflare_purge_cache
    Write
    Destructive

    Purge cached content for a zone -- by specific file URLs, cache tags, hostnames, or everything. A full purge is a real operational event: it forces every cached asset to be re-fetched from origin, which can spike origin traffic. Prefer scoping to files/tags/hosts over purge_everything when possible.

Every tool name and description, machine-readable: /llms-full.txt

Access & safety

You decide what it can touch

The same model applies to every connector, and it defaults closed.

Your own credential

You supply your own Cloudflare key, scoped however you like on their side. It is encrypted with AES-256-GCM and never returned by any API response or tool call.

Writes off by default

A new connection switches on a read-oriented default set only. Every write tool must be enabled deliberately before any client can call it.

Roles enforced server-side

READ, WRITE and ADMIN gate tool invocation on the server, not just in the UI. A READ member's token is refused any write tool.

Setup

Connect Cloudflare in minutes

No infrastructure to run. Copy one URL and one token into your client.

  1. 1Create a free workspace and connect Cloudflare.
  2. 2Choose which tools to expose — writes stay off until you enable them.
  3. 3Copy your MCP endpoint URL and bearer token.
  4. 4Paste them into Claude, Cursor, or any MCP client.
claude_desktop_config.json
{
  "mcpServers": {
    "serve-mcp": {
      "url": "https://servemcp.com/api/mcp/your-workspace",
      "transport": "http",
      "headers": {
        "Authorization": "Bearer smcp_..."
      }
    }
  }
}

Put Cloudflare in front of your assistant

Free plan, no card required. Connect in minutes.