Cloudflare MCP Server for Cloudflare Workers
74 tools available in the Cloudflare MCP server. Each tool can be called by AI assistants to perform specific actions.
cloudflare_list_pages_projectsList all Pages projects in an account.
Args:
{
"type": "object",
"required": [
"account_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"account_id": {
"type": "string",
"description": "Account ID"
}
}
}cloudflare_purge_cache_by_hostPurge cached content by hostname.
This purges all cached content for the specified hostnames. You can purge up to 30 hosts at once.
Args:
{
"type": "object",
"required": [
"zone_id",
"hosts"
],
"properties": {
"hosts": {
"type": "string",
"description": "JSON array of hostnames (e.g., \\'[\"www.example.com\", \"api.example.com\"]\\"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
}
}
}cloudflare_delete_worker_routeDelete a Worker route.
Args:
{
"type": "object",
"required": [
"zone_id",
"route_id"
],
"properties": {
"zone_id": {
"type": "string",
"description": "Zone ID"
},
"route_id": {
"type": "string",
"description": "Route ID"
}
}
}cloudflare_get_userGet the currently authenticated user's details.
Returns the user's email, name, and account settings.
Args:
{
"type": "object",
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}cloudflare_list_accountsList all accounts the user has access to.
Args:
{
"type": "object",
"properties": {
"page": {
"type": "integer",
"default": 1,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"per_page": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1
}
}
}cloudflare_get_accountGet details of a specific account.
Args:
{
"type": "object",
"required": [
"account_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"account_id": {
"type": "string",
"description": "Account ID"
}
}
}cloudflare_list_account_membersList all members of an account.
Args:
{
"type": "object",
"required": [
"account_id"
],
"properties": {
"page": {
"type": "integer",
"default": 1,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"per_page": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1
},
"account_id": {
"type": "string",
"description": "Account ID"
}
}
}cloudflare_get_zone_analyticsGet analytics dashboard data for a zone.
Returns traffic statistics including requests, bandwidth, threats, and page views.
Time range examples:
Args:
{
"type": "object",
"required": [
"zone_id"
],
"properties": {
"since": {
"type": "string",
"description": "Start time (ISO 8601 or -minutes)"
},
"until": {
"type": "string",
"description": "End time (ISO 8601 or -minutes)"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
}
}
}cloudflare_list_filtersList all filters for a zone.
Filters are the expressions used in firewall rules.
Args:
{
"type": "object",
"required": [
"zone_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
}
}
}cloudflare_list_load_balancer_monitorsList all load balancer health monitors in an account.
Monitors check the health of origins in pools and remove unhealthy origins from rotation.
Args:
{
"type": "object",
"required": [
"account_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"account_id": {
"type": "string",
"description": "Account ID"
}
}
}cloudflare_get_dns_analyticsGet DNS analytics for a zone.
Available dimensions:
Available metrics:
Args:
{
"type": "object",
"required": [
"zone_id"
],
"properties": {
"since": {
"type": "string",
"description": "Start time"
},
"until": {
"type": "string",
"description": "End time"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"metrics": {
"type": "string",
"description": "Metrics as JSON array (e.g., \\'[\"queryCount\"]\\"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
},
"dimensions": {
"type": "string",
"description": "Dimensions as JSON array (e.g., \\'[\"queryName\", \"queryType\"]\\"
}
}
}cloudflare_purge_all_cachePurge all cached content for a zone.
WARNING: This removes all cached files. The next requests will need to be served from your origin server, which may cause increased load.
Args:
{
"type": "object",
"required": [
"zone_id"
],
"properties": {
"zone_id": {
"type": "string",
"description": "Zone ID"
}
}
}cloudflare_purge_cache_by_urlPurge specific URLs from cache.
You can purge up to 30 URLs at once.
Args:
{
"type": "object",
"required": [
"zone_id",
"urls"
],
"properties": {
"urls": {
"type": "string",
"description": "JSON array of URLs to purge (e.g., \\'[\"https://example.com/file.js\"]\\"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
}
}
}cloudflare_purge_cache_by_tagPurge cached content by cache tags.
Cache tags must be set via the Cache-Tag response header from your origin. You can purge up to 30 tags at once.
Args:
{
"type": "object",
"required": [
"zone_id",
"tags"
],
"properties": {
"tags": {
"type": "string",
"description": "JSON array of cache tags (e.g., \\'[\"tag1\", \"tag2\"]\\"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
}
}
}cloudflare_list_d1_databasesList all D1 databases in an account.
Args:
{
"type": "object",
"required": [
"account_id"
],
"properties": {
"page": {
"type": "integer",
"default": 1,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"per_page": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1
},
"account_id": {
"type": "string",
"description": "Account ID"
}
}
}cloudflare_get_d1_databaseGet details of a specific D1 database.
Args:
{
"type": "object",
"required": [
"account_id",
"database_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"account_id": {
"type": "string",
"description": "Account ID"
},
"database_id": {
"type": "string",
"description": "Database UUID"
}
}
}cloudflare_create_d1_databaseCreate a new D1 database.
Args:
{
"type": "object",
"required": [
"account_id",
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Database name"
},
"account_id": {
"type": "string",
"description": "Account ID"
}
}
}cloudflare_delete_d1_databaseDelete a D1 database.
WARNING: This will permanently delete the database and all its data.
Args:
{
"type": "object",
"required": [
"account_id",
"database_id"
],
"properties": {
"account_id": {
"type": "string",
"description": "Account ID"
},
"database_id": {
"type": "string",
"description": "Database UUID"
}
}
}cloudflare_query_d1_databaseExecute a SQL query on a D1 database.
Supports both read and write operations (SELECT, INSERT, UPDATE, DELETE, CREATE, etc.).
Examples:
Args:
{
"type": "object",
"required": [
"account_id",
"database_id",
"sql"
],
"properties": {
"sql": {
"type": "string",
"description": "SQL query"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"params": {
"type": "string",
"description": "Query parameters as JSON array (e.g., \\'[\"value1\", 123]\\"
},
"account_id": {
"type": "string",
"description": "Account ID"
},
"database_id": {
"type": "string",
"description": "Database UUID"
}
}
}cloudflare_list_dns_recordsList DNS records for a zone.
Returns all DNS records with their type, name, content, TTL, and proxy status.
Args:
{
"type": "object",
"required": [
"zone_id"
],
"properties": {
"name": {
"type": "string",
"description": "Filter by record name"
},
"page": {
"type": "integer",
"default": 1,
"minimum": 1
},
"type": {
"type": "string",
"description": "Filter by record type (A, AAAA, CNAME, TXT, MX, etc.)"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"content": {
"type": "string",
"description": "Filter by record content"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
},
"per_page": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1
}
}
}cloudflare_get_dns_recordGet a specific DNS record by ID.
Args:
{
"type": "object",
"required": [
"zone_id",
"record_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
},
"record_id": {
"type": "string",
"description": "DNS record ID"
}
}
}cloudflare_create_dns_recordCreate a new DNS record.
Common record types:
Args:
{
"type": "object",
"required": [
"zone_id",
"type",
"name",
"content"
],
"properties": {
"ttl": {
"type": "integer",
"default": 1,
"minimum": 1,
"description": "TTL in seconds (1 = automatic)"
},
"name": {
"type": "string",
"description": "Record name (@ for root, or subdomain)"
},
"type": {
"type": "string",
"description": "Record type"
},
"comment": {
"type": "string",
"description": "Optional comment"
},
"content": {
"type": "string",
"description": "Record content (IP, domain, text, etc.)"
},
"proxied": {
"type": "boolean",
"default": false,
"description": "Proxy through Cloudflare"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
},
"priority": {
"type": "integer",
"description": "Priority for MX/SRV records"
}
}
}cloudflare_update_dns_recordUpdate an existing DNS record.
Args:
{
"type": "object",
"required": [
"zone_id",
"record_id"
],
"properties": {
"ttl": {
"type": "integer",
"minimum": 1,
"description": "TTL in seconds"
},
"name": {
"type": "string",
"description": "Record name"
},
"type": {
"type": "string",
"description": "Record type"
},
"comment": {
"type": "string",
"description": "Comment"
},
"content": {
"type": "string",
"description": "Record content"
},
"proxied": {
"type": "boolean",
"description": "Proxy through Cloudflare"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
},
"record_id": {
"type": "string",
"description": "DNS record ID"
}
}
}cloudflare_delete_dns_recordDelete a DNS record.
Args:
{
"type": "object",
"required": [
"zone_id",
"record_id"
],
"properties": {
"zone_id": {
"type": "string",
"description": "Zone ID"
},
"record_id": {
"type": "string",
"description": "DNS record ID to delete"
}
}
}cloudflare_export_dns_recordsExport all DNS records for a zone in BIND format.
Returns the zone file as a string that can be imported to other DNS providers.
Args:
{
"type": "object",
"required": [
"zone_id"
],
"properties": {
"zone_id": {
"type": "string",
"description": "Zone ID"
}
}
}cloudflare_import_dns_recordsImport DNS records from a BIND zone file.
The file should be in standard BIND zone file format.
Args:
{
"type": "object",
"required": [
"zone_id",
"file_content"
],
"properties": {
"zone_id": {
"type": "string",
"description": "Zone ID"
},
"file_content": {
"type": "string",
"description": "Zone file content in BIND format"
}
}
}cloudflare_list_firewall_rulesList all firewall rules for a zone.
Args:
{
"type": "object",
"required": [
"zone_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
}
}
}cloudflare_get_firewall_ruleGet a specific firewall rule.
Args:
{
"type": "object",
"required": [
"zone_id",
"rule_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"rule_id": {
"type": "string",
"description": "Rule ID"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
}
}
}cloudflare_create_firewall_ruleCreate a new firewall rule.
Filter expression examples:
Actions:
Args:
{
"type": "object",
"required": [
"zone_id",
"expression",
"action"
],
"properties": {
"action": {
"type": "string",
"description": "Action to take"
},
"paused": {
"type": "boolean",
"default": false,
"description": "Whether rule is paused"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
},
"expression": {
"type": "string",
"description": "Filter expression"
},
"description": {
"type": "string",
"description": "Rule description"
}
}
}cloudflare_update_firewall_ruleUpdate an existing firewall rule.
Args:
{
"type": "object",
"required": [
"zone_id",
"rule_id"
],
"properties": {
"action": {
"type": "string",
"description": "New action"
},
"paused": {
"type": "boolean",
"description": "New paused status"
},
"rule_id": {
"type": "string",
"description": "Rule ID"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
},
"description": {
"type": "string",
"description": "New description"
}
}
}cloudflare_delete_firewall_ruleDelete a firewall rule.
Args:
{
"type": "object",
"required": [
"zone_id",
"rule_id"
],
"properties": {
"rule_id": {
"type": "string",
"description": "Rule ID"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
}
}
}cloudflare_list_kv_namespacesList all KV namespaces in an account.
Args:
{
"type": "object",
"required": [
"account_id"
],
"properties": {
"page": {
"type": "integer",
"default": 1,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"per_page": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1
},
"account_id": {
"type": "string",
"description": "Account ID"
}
}
}cloudflare_get_kv_namespaceGet details of a specific KV namespace.
Args:
{
"type": "object",
"required": [
"account_id",
"namespace_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"account_id": {
"type": "string",
"description": "Account ID"
},
"namespace_id": {
"type": "string",
"description": "Namespace ID"
}
}
}cloudflare_create_kv_namespaceCreate a new KV namespace.
Args:
{
"type": "object",
"required": [
"account_id",
"title"
],
"properties": {
"title": {
"type": "string",
"description": "Namespace title"
},
"account_id": {
"type": "string",
"description": "Account ID"
}
}
}cloudflare_rename_kv_namespaceRename a KV namespace.
Args:
{
"type": "object",
"required": [
"account_id",
"namespace_id",
"title"
],
"properties": {
"title": {
"type": "string",
"description": "New namespace title"
},
"account_id": {
"type": "string",
"description": "Account ID"
},
"namespace_id": {
"type": "string",
"description": "Namespace ID"
}
}
}cloudflare_delete_kv_namespaceDelete a KV namespace.
WARNING: This will delete all keys in the namespace.
Args:
{
"type": "object",
"required": [
"account_id",
"namespace_id"
],
"properties": {
"account_id": {
"type": "string",
"description": "Account ID"
},
"namespace_id": {
"type": "string",
"description": "Namespace ID"
}
}
}cloudflare_list_kv_keysList keys in a KV namespace.
Returns key names with optional metadata. Use cursor for pagination.
Args:
{
"type": "object",
"required": [
"account_id",
"namespace_id"
],
"properties": {
"limit": {
"type": "integer",
"default": 1000,
"maximum": 1000,
"minimum": 1
},
"cursor": {
"type": "string",
"description": "Pagination cursor"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"prefix": {
"type": "string",
"description": "Filter by key prefix"
},
"account_id": {
"type": "string",
"description": "Account ID"
},
"namespace_id": {
"type": "string",
"description": "Namespace ID"
}
}
}cloudflare_get_kv_valueGet the value of a key from a KV namespace.
Returns the raw value as a string.
Args:
{
"type": "object",
"required": [
"account_id",
"namespace_id",
"key"
],
"properties": {
"key": {
"type": "string",
"description": "Key name"
},
"account_id": {
"type": "string",
"description": "Account ID"
},
"namespace_id": {
"type": "string",
"description": "Namespace ID"
}
}
}cloudflare_put_kv_valueSet a key-value pair in a KV namespace.
Args:
{
"type": "object",
"required": [
"account_id",
"namespace_id",
"key",
"value"
],
"properties": {
"key": {
"type": "string",
"description": "Key name"
},
"value": {
"type": "string",
"description": "Value to store"
},
"account_id": {
"type": "string",
"description": "Account ID"
},
"expiration": {
"type": "integer",
"description": "Unix timestamp for expiration"
},
"namespace_id": {
"type": "string",
"description": "Namespace ID"
},
"expiration_ttl": {
"type": "integer",
"description": "TTL in seconds"
}
}
}cloudflare_delete_kv_valueDelete a key from a KV namespace.
Args:
{
"type": "object",
"required": [
"account_id",
"namespace_id",
"key"
],
"properties": {
"key": {
"type": "string",
"description": "Key to delete"
},
"account_id": {
"type": "string",
"description": "Account ID"
},
"namespace_id": {
"type": "string",
"description": "Namespace ID"
}
}
}cloudflare_list_load_balancersList all load balancers for a zone.
Args:
{
"type": "object",
"required": [
"zone_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
}
}
}cloudflare_get_load_balancerGet details of a specific load balancer.
Args:
{
"type": "object",
"required": [
"zone_id",
"lb_id"
],
"properties": {
"lb_id": {
"type": "string",
"description": "Load balancer ID"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
}
}
}cloudflare_list_load_balancer_poolsList all load balancer pools in an account.
Pools are collections of origins (servers) that the load balancer distributes traffic to.
Args:
{
"type": "object",
"required": [
"account_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"account_id": {
"type": "string",
"description": "Account ID"
}
}
}cloudflare_get_load_balancer_poolGet details of a specific load balancer pool.
Args:
{
"type": "object",
"required": [
"account_id",
"pool_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"pool_id": {
"type": "string",
"description": "Pool ID"
},
"account_id": {
"type": "string",
"description": "Account ID"
}
}
}cloudflare_get_pages_projectGet details of a specific Pages project.
Args:
{
"type": "object",
"required": [
"account_id",
"project_name"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"account_id": {
"type": "string",
"description": "Account ID"
},
"project_name": {
"type": "string",
"description": "Project name"
}
}
}cloudflare_create_pages_projectCreate a new Pages project.
Note: This creates an empty project. To deploy, use the Cloudflare dashboard or wrangler CLI to connect a Git repository or upload files.
Args:
{
"type": "object",
"required": [
"account_id",
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Project name"
},
"account_id": {
"type": "string",
"description": "Account ID"
},
"production_branch": {
"type": "string",
"default": "main",
"description": "Production branch name"
}
}
}cloudflare_delete_pages_projectDelete a Pages project.
WARNING: This will delete the project and all its deployments.
Args:
{
"type": "object",
"required": [
"account_id",
"project_name"
],
"properties": {
"account_id": {
"type": "string",
"description": "Account ID"
},
"project_name": {
"type": "string",
"description": "Project name"
}
}
}cloudflare_list_pages_deploymentsList all deployments for a Pages project.
Args:
{
"type": "object",
"required": [
"account_id",
"project_name"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"account_id": {
"type": "string",
"description": "Account ID"
},
"project_name": {
"type": "string",
"description": "Project name"
}
}
}cloudflare_get_pages_deploymentGet details of a specific deployment.
Args:
{
"type": "object",
"required": [
"account_id",
"project_name",
"deployment_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"account_id": {
"type": "string",
"description": "Account ID"
},
"project_name": {
"type": "string",
"description": "Project name"
},
"deployment_id": {
"type": "string",
"description": "Deployment ID"
}
}
}cloudflare_delete_pages_deploymentDelete a specific deployment.
Note: You cannot delete the current production deployment.
Args:
{
"type": "object",
"required": [
"account_id",
"project_name",
"deployment_id"
],
"properties": {
"account_id": {
"type": "string",
"description": "Account ID"
},
"project_name": {
"type": "string",
"description": "Project name"
},
"deployment_id": {
"type": "string",
"description": "Deployment ID"
}
}
}cloudflare_get_worker_cron_triggersGet cron triggers (scheduled events) for a Worker.
Args:
{
"type": "object",
"required": [
"account_id",
"script_name"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"account_id": {
"type": "string",
"description": "Account ID"
},
"script_name": {
"type": "string",
"description": "Worker script name"
}
}
}cloudflare_rollback_pages_deploymentRollback to a previous deployment.
This will make the specified deployment the new production deployment.
Args:
{
"type": "object",
"required": [
"account_id",
"project_name",
"deployment_id"
],
"properties": {
"account_id": {
"type": "string",
"description": "Account ID"
},
"project_name": {
"type": "string",
"description": "Project name"
},
"deployment_id": {
"type": "string",
"description": "Deployment ID to rollback to"
}
}
}cloudflare_list_r2_bucketsList all R2 buckets in an account.
Args:
{
"type": "object",
"required": [
"account_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"account_id": {
"type": "string",
"description": "Account ID"
}
}
}cloudflare_get_r2_bucketGet details of a specific R2 bucket.
Args:
{
"type": "object",
"required": [
"account_id",
"bucket_name"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"account_id": {
"type": "string",
"description": "Account ID"
},
"bucket_name": {
"type": "string",
"description": "Bucket name"
}
}
}cloudflare_create_r2_bucketCreate a new R2 bucket.
Bucket names must:
Location hints:
Args:
{
"type": "object",
"required": [
"account_id",
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Bucket name"
},
"account_id": {
"type": "string",
"description": "Account ID"
},
"location_hint": {
"type": "string",
"description": "Location hint (wnam, enam, weur, eeur, apac)"
}
}
}cloudflare_delete_r2_bucketDelete an R2 bucket.
WARNING: The bucket must be empty before it can be deleted.
Args:
{
"type": "object",
"required": [
"account_id",
"bucket_name"
],
"properties": {
"account_id": {
"type": "string",
"description": "Account ID"
},
"bucket_name": {
"type": "string",
"description": "Bucket name"
}
}
}cloudflare_list_ssl_certificatesList all SSL/TLS certificate packs for a zone.
Returns Universal SSL, Advanced Certificate Manager, and custom certificates.
Args:
{
"type": "object",
"required": [
"zone_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
}
}
}cloudflare_list_waf_packagesList all WAF packages for a zone.
WAF packages contain groups of rules that protect against different threats. Common packages include Cloudflare Managed Ruleset and OWASP Core Ruleset.
Args:
{
"type": "object",
"required": [
"zone_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
}
}
}cloudflare_list_waf_rulesList all WAF rules in a package.
Args:
{
"type": "object",
"required": [
"zone_id",
"package_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
},
"package_id": {
"type": "string",
"description": "WAF package ID"
}
}
}cloudflare_update_waf_ruleUpdate the mode of a WAF rule.
Modes:
Args:
{
"type": "object",
"required": [
"zone_id",
"package_id",
"rule_id",
"mode"
],
"properties": {
"mode": {
"enum": [
"default",
"disable",
"simulate",
"block",
"challenge"
],
"type": "string",
"description": "Rule mode"
},
"rule_id": {
"type": "string",
"description": "Rule ID"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
},
"package_id": {
"type": "string",
"description": "WAF package ID"
}
}
}cloudflare_list_workersList all Workers scripts in an account.
Returns all deployed Workers with their metadata.
Args:
{
"type": "object",
"required": [
"account_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"account_id": {
"type": "string",
"description": "Account ID"
}
}
}cloudflare_get_workerGet the source code of a Worker script.
Returns the JavaScript/TypeScript source code.
Args:
{
"type": "object",
"required": [
"account_id",
"script_name"
],
"properties": {
"account_id": {
"type": "string",
"description": "Account ID"
},
"script_name": {
"type": "string",
"description": "Worker script name"
}
}
}cloudflare_delete_workerDelete a Worker script.
WARNING: This will permanently delete the Worker and all its versions.
Args:
{
"type": "object",
"required": [
"account_id",
"script_name"
],
"properties": {
"account_id": {
"type": "string",
"description": "Account ID"
},
"script_name": {
"type": "string",
"description": "Worker script name"
}
}
}cloudflare_list_worker_routesList all Worker routes for a zone.
Routes map URL patterns to Worker scripts.
Args:
{
"type": "object",
"required": [
"zone_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
}
}
}cloudflare_create_worker_routeCreate a Worker route to map a URL pattern to a Worker.
Pattern examples:
Args:
{
"type": "object",
"required": [
"zone_id",
"pattern"
],
"properties": {
"script": {
"type": "string",
"description": "Worker script name"
},
"pattern": {
"type": "string",
"description": "URL pattern (e.g., \"example.com/*"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
}
}
}cloudflare_list_worker_secretsList all secrets (environment variables) for a Worker.
Note: Only secret names are returned, not values (for security).
Args:
{
"type": "object",
"required": [
"account_id",
"script_name"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"account_id": {
"type": "string",
"description": "Account ID"
},
"script_name": {
"type": "string",
"description": "Worker script name"
}
}
}cloudflare_list_zonesList all zones (domains) in your Cloudflare account.
Returns a paginated list of zones with their status, plan, and configuration.
Args:
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Filter by zone name"
},
"page": {
"type": "integer",
"default": 1,
"minimum": 1,
"description": "Page number"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string",
"default": "json",
"description": "Response format"
},
"status": {
"type": "string",
"description": "Filter by status (active, pending, etc.)"
},
"per_page": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1,
"description": "Results per page"
}
}
}cloudflare_get_zoneGet detailed information about a specific zone.
Args:
{
"type": "object",
"required": [
"zone_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
}
}
}cloudflare_create_zoneAdd a new zone (domain) to your Cloudflare account.
Args:
{
"type": "object",
"required": [
"name",
"account_id"
],
"properties": {
"name": {
"type": "string",
"description": "Domain name (e.g., \"example.com"
},
"type": {
"enum": [
"full",
"partial",
"secondary"
],
"type": "string",
"default": "full",
"description": "Zone type"
},
"account_id": {
"type": "string",
"description": "Account ID"
},
"jump_start": {
"type": "boolean",
"default": true,
"description": "Scan for existing DNS records"
}
}
}cloudflare_update_zoneUpdate zone settings.
Args:
{
"type": "object",
"required": [
"zone_id"
],
"properties": {
"type": {
"enum": [
"full",
"partial",
"secondary"
],
"type": "string",
"description": "Zone type"
},
"paused": {
"type": "boolean",
"description": "Pause the zone"
},
"plan_id": {
"type": "string",
"description": "New plan ID"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
}
}
}cloudflare_delete_zoneDelete a zone from Cloudflare.
WARNING: This will remove the zone and all its settings permanently.
Args:
{
"type": "object",
"required": [
"zone_id"
],
"properties": {
"zone_id": {
"type": "string",
"description": "Zone ID to delete"
}
}
}cloudflare_get_zone_settingsGet all settings for a zone.
Returns settings like SSL mode, minification, caching, security settings, etc.
Args:
{
"type": "object",
"required": [
"zone_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
}
}
}cloudflare_update_zone_settingUpdate a specific zone setting.
Common settings:
Args:
{
"type": "object",
"required": [
"zone_id",
"setting_id",
"value"
],
"properties": {
"value": {
"description": "New value for the setting"
},
"zone_id": {
"type": "string",
"description": "Zone ID"
},
"setting_id": {
"type": "string",
"description": "Setting ID (e.g., ssl, always_use_https)"
}
}
}cloudflare_zone_activation_checkTrigger a check to verify zone activation status.
Use this for zones that are in "pending" status to check if the nameservers have been updated.
Args:
{
"type": "object",
"required": [
"zone_id"
],
"properties": {
"zone_id": {
"type": "string",
"description": "Zone ID"
}
}
}