# Manage Cloudflare caching with Grok

> Managing Cloudflare with Grok means asking xAI's chat assistant on grok.com to check a site's Cloudflare link, purge its edge cache or switch development mode, using the xSpeed Hub custom connector you added once.

Page: https://xspeedcache.com/agent/grok/cloudflare/
Last updated: October 2026

Someone tells you the homepage still shows last week's banner, and you suspect the copy Cloudflare keeps at the edge. In a Grok chat you describe the symptom and name the site. Grok matches the name with list_sites, calls cloudflare_verify to ask Cloudflare whether the token and Zone ID stored in xSpeed still resolve, and tells you the result. That check is a read and purges nothing, so it is a safe first step before anything changes.

From there you choose. purge_cloudflare clears the edge cache for the site's zone and leaves the copies on your server alone. If the server page cache is stale too, the edge refills from it, so the usual order is purge_cache first and purge_cloudflare after, or one purge_cache of type all, which reaches the edge when Cloudflare is connected. set_cloudflare_dev_mode with enabled true bypasses the edge for about three hours so origin changes show at once. None of the three Cloudflare tools accepts site: "all", so several sites mean several calls.

All three need Cloudflare connected in xSpeed on that site: the integration on, an API token and the Zone ID, set in the xSpeed Cache panel in wp-admin. If verify fails, Grok gets an error with the HTTP status and Cloudflare's message, and the fix is in wp-admin, not in the chat. Never paste a Cloudflare token into the conversation.

## Set up Grok once

### 1. Put your sites in xSpeed Hub

Sign in at app.xspeedcache.com with Google or email; the Hub is free and has no site cap. Then connect each WordPress site from its own dashboard: click Connect Hub in the xSpeed Cache top bar, then Connect via xSpeed Hub. Each site needs the free xSpeed Cache plugin.

### 2. Add xSpeed Hub as a custom connector

Go to grok.com/connectors, click New Connector and select Custom. Enter this as the MCP server URL and complete the authentication: approve access on the xSpeed Hub page that opens. Grok then reads the Hub's tools and makes them available in your conversations.

```
https://app.xspeedcache.com/xspeed/mcp
```

### 3. Ask a first question

Start a chat and ask something that names xSpeed Hub, so Grok reaches for the connector. A list of your sites with their cache status means the connection works.

```
Use xSpeed Hub to list my sites and tell me which ones have page caching turned off.
```

Full setup: https://xspeedcache.com/agent/grok/

### Before you send a prompt that changes something

Reads change nothing on your sites, though contact_support emails xSpeed support. Writes run once your connection allows them, so your client's approval prompt and a read-only connection (the token's Read-only everywhere switch, or a Viewer sign-in) are the gates that matter. xAI's connector documentation describes no per-tool approval setting. It says Grok can use a connector's tools whenever your questions relate to that service. xSpeed Hub has no confirmation step of its own, so a purge or a settings change runs as soon as Grok calls it and your connection allows writes. The Hub tells the agent to confirm the target site and to ask once before a write that touches every site, but that is an instruction, not a lock. If you want Grok to read and never change anything, sign in as a Viewer member of the workspace, which only ever gets read access. Otherwise read what Grok says it is about to do before you answer yes.

## Prompts

- Using xSpeed Hub, is the Cloudflare connection on shop still working? Verify only.
- The banner on blog is stale. Use xSpeed Hub to purge blog's page cache and then its Cloudflare edge.
- With xSpeed Hub, turn Cloudflare development mode on for shop while I edit, and tell me how to turn it off.

## Example session

```
You: Using xSpeed Hub, find out why blog still shows last week's banner to visitors.
  → cloudflare_verify(site: blog) [read-only]: Credentials and zone resolve; Cloudflare connected
Agent: Cloudflare is connected on blog, so its edge can hold the old banner, and so can xSpeed's page cache on the server, which would refill the edge. Purge blog's page cache first, then the Cloudflare edge?
You: Yes, both.
  → purge_cache(site: blog, type: page) [changes site]: page cache purged (38 entries)
  → purge_cloudflare(site: blog) [changes site]: Cloudflare edge cache purged
Agent: Both are cleared for blog. Load it in a private window to check the banner. I did not touch development mode.
```

## How it works

1. **Verify the connection**: cloudflare_verify calls Cloudflare's API with the credentials stored on the site and checks that the token and zone still resolve. It purges nothing and works on a read-only connection. If Cloudflare is not connected on that site, the call comes back as an error and the agent should tell you rather than retry.
2. **Purge the edge**: purge_cloudflare empties the Cloudflare edge cache for the site's zone. It does not touch the copies on your server. When Cloudflare is in front of a site, a content change usually needs both, so the agent runs purge_cache first and purge_cloudflare after it, or one purge_cache of type all, which reaches the edge when Cloudflare is connected.
3. **Turn development mode on to see origin changes**: set_cloudflare_dev_mode with enabled true bypasses the edge for about three hours, so changes on the origin show immediately. It slows the site for real visitors the whole time. Your client's prompt is the gate here, because the Hub's instructions do not name this tool in their confirm list.
4. **Turn it off when you finish**: set_cloudflare_dev_mode with enabled false switches development mode off. Cloudflare also ends it on its own after about three hours. No Hub tool reads whether it is currently on, so note when you turned it on.
5. **Read a failure**: A rejected token, an empty zone ID or a refused call comes back as an error that names the action, the HTTP status and Cloudflare's message when it gave one. It is not reported as a success. The credentials themselves are set in the xSpeed Cache panel in wp-admin, not through the Hub.

## Reference

| | |
| --- | --- |
| Read tool | cloudflare_verify; purges nothing and works on a read-only connection |
| Write tools | purge_cloudflare and set_cloudflare_dev_mode (enabled true or false) |
| Needs | Cloudflare connected in xSpeed on that site: integration on, an API token (or the legacy key and email) and a Zone ID |
| Edge purge scope | Everything Cloudflare holds for the site's zone; the server copies stay |
| Development mode | Bypasses the edge for about 3 hours, then Cloudflare switches it off |
| Token permissions | Zone Cache Purge, and Zone Settings Edit for development mode |
| What verify proves | The token and zone resolve; a token without Zone Settings Edit still verifies |
| Through purge_cache | Type all also clears the edge when Cloudflare is connected; page, assets, object and rest do not |
| Every site at once | None of the three accept site: "all"; one site per call |
| Failure shape | An error with the action, the HTTP status and Cloudflare's message |
| Read-only connection | The connection token with Read-only everywhere on, or a Viewer member's sign-in; purge_cloudflare and set_cloudflare_dev_mode are refused and cloudflare_verify works. An OAuth sign-in gets the scopes the client asks for, so the switch does not make it read-only |
| Confirmation | None on the Hub; your client's prompt is the gate |

## Rules

- Run cloudflare_verify first, but do not read a pass as proof that every call will work. A token that lacks Zone Settings Edit verifies and purges fine, then fails the first time development mode is switched.
- Purge the server and the edge together after a content change. Purging only the site leaves visitors on the old page until the edge copy expires.
- Turn development mode off as soon as you are done. It slows the site for real visitors for up to about three hours, and no tool reports its state.
- Never paste a Cloudflare token or Global API Key into the chat. Connect Cloudflare in the xSpeed Cache panel in wp-admin, and use a scoped API token rather than the Global API Key.
- purge_cloudflare and set_cloudflare_dev_mode are write tools. The Hub runs them as soon as your connection allows writes, so your client's approval prompt and a read-only connection (the connection token with Read-only everywhere on, or a Viewer member's sign-in) are the gates that matter.

## Good to know with Grok

xAI describes no per-tool approval setting for connectors and says Grok can use a connector's tools whenever your question relates to that service. For Cloudflare that matters most with development mode: a request like "make sure visitors see my changes" could end in set_cloudflare_dev_mode, which slows the site for real visitors for about three hours, and the Hub runs it as soon as your connection allows writes, because it has no confirmation step of its own. The Hub's instructions to the agent do not name that tool in their confirm list either. Say exactly what you want, verify only or purge the edge, and read Grok's plan before you answer yes. No Hub tool reports whether dev mode is on, so note when it was switched. For a Grok that can verify but never purge, sign in as a Viewer member of the workspace; the connection token does not apply, because the connector uses OAuth.

## More prompts for this job

They work in any client connected to xSpeed Hub.

- Use xSpeed Hub to check that the Cloudflare connection on shop still works.
- With xSpeed Hub, purge the Cloudflare edge cache on blog.
- I changed the checkout page on shop. Use xSpeed Hub to purge the site cache and the Cloudflare edge.
- Use xSpeed Hub to turn Cloudflare development mode on for shop. I am editing the theme.
- With xSpeed Hub, turn Cloudflare development mode off on shop.
- Ask xSpeed Hub to verify Cloudflare on shop and tell me what is wrong if it fails.
- Using xSpeed Hub, which of my sites have a working Cloudflare connection? Check them one at a time.

## Frequently asked questions

### Can Grok purge Cloudflare for me?

Yes, through purge_cloudflare, when the site has Cloudflare connected in xSpeed and your Hub sign-in allows writes. It clears the edge only. When the server page cache is stale too, Grok can run purge_cache first so the edge does not refill from an old copy.

### How do I keep Grok from switching on development mode?

xAI documents no per-tool approval for connectors, so the dependable stop is a read-only sign-in: a Viewer member of the workspace can run cloudflare_verify while the Hub refuses purge_cloudflare and set_cloudflare_dev_mode. Otherwise say exactly which action you want in each request.

### What does a site need before the Cloudflare tools work?

Cloudflare has to be connected in xSpeed on that site: the integration switched on, an API token (or the legacy Global API Key with your Cloudflare email) and the Zone ID of the domain. You set these in the xSpeed Cache panel in wp-admin. Without them, the tools return an error instead of acting.

### Does purging the xSpeed cache also clear Cloudflare?

A purge_cache of type all does, when the site has Cloudflare connected, and it reports each step. A page, assets, object or rest purge stays on your server. purge_cloudflare clears only the edge, so use it when the server copy is already fresh.

### How long does development mode last?

About three hours. Cloudflare switches it off on its own after that. While it is on, the edge is bypassed, so origin changes show at once and real visitors get a slower site. Turn it off yourself with set_cloudflare_dev_mode set to false when you are done.

### Why did cloudflare_verify pass but development mode failed?

Verifying and purging do not need Zone Settings Edit on the token, so a token without it looks fine. Development mode writes a zone setting, so it is refused. Edit the token in Cloudflare so it has both Zone Cache Purge and Zone Settings Edit, then try again.

### Can I purge Cloudflare on all my sites with one prompt?

Not with purge_cloudflare, which takes one site per call. A purge_cache of type all with site set to all clears the edge on each site that has Cloudflare connected, and the result is reported per site. The Hub tells the agent to confirm a write across every site with you once first.

## Manage Cloudflare with other agents

[Claude Code](https://xspeedcache.com/agent/claude-code/cloudflare/) · [Claude](https://xspeedcache.com/agent/claude/cloudflare/) · [Claude Cowork](https://xspeedcache.com/agent/claude-cowork/cloudflare/) · [ChatGPT](https://xspeedcache.com/agent/chatgpt/cloudflare/) · [Codex](https://xspeedcache.com/agent/codex/cloudflare/) · [Cursor](https://xspeedcache.com/agent/cursor/cloudflare/) · [GitHub Copilot in VS Code](https://xspeedcache.com/agent/github-copilot/cloudflare/) · [Windsurf](https://xspeedcache.com/agent/windsurf/cloudflare/) · [Gemini CLI](https://xspeedcache.com/agent/gemini-cli/cloudflare/) · [Antigravity](https://xspeedcache.com/agent/antigravity/cloudflare/) · [Zed](https://xspeedcache.com/agent/zed/cloudflare/) · [Kiro](https://xspeedcache.com/agent/kiro/cloudflare/) · [OpenCode](https://xspeedcache.com/agent/opencode/cloudflare/) · [OpenClaw](https://xspeedcache.com/agent/openclaw/cloudflare/) · [Hermes Agent](https://xspeedcache.com/agent/hermes-agent/cloudflare/) · [Grok Build](https://xspeedcache.com/agent/grok-build/cloudflare/) · [ChatGPT dots](https://xspeedcache.com/agent/chatgpt-dots/cloudflare/) · [Grok Bot](https://xspeedcache.com/agent/grok-bot/cloudflare/) · [Muse](https://xspeedcache.com/agent/muse/cloudflare/) · [Manus](https://xspeedcache.com/agent/manus/cloudflare/) · [Kimi Code](https://xspeedcache.com/agent/kimi/cloudflare/) · [Paperclip](https://xspeedcache.com/agent/paperclip/cloudflare/) · [NanoClaw](https://xspeedcache.com/agent/nanoclaw/cloudflare/)

## More with Grok

- [Purge the WordPress cache with Grok](https://xspeedcache.com/agent/grok/purge-cache/)
- [Find out why WordPress pages are not cached with Grok](https://xspeedcache.com/agent/grok/troubleshoot-cache/)
- [Scan a website for speed problems with Grok](https://xspeedcache.com/agent/grok/speed-scan/)
- [Run and track PageSpeed tests with Grok](https://xspeedcache.com/agent/grok/pagespeed-tests/)
- [Raise a WordPress site's PageSpeed score with Grok](https://xspeedcache.com/agent/grok/optimize-site/)
- [Tune WordPress cache settings with Grok](https://xspeedcache.com/agent/grok/cache-settings/)
- [Warm the WordPress cache with Grok](https://xspeedcache.com/agent/grok/preload-cache/)
- [Set up the Redis object cache with Grok](https://xspeedcache.com/agent/grok/object-cache/)
- [Manage every WordPress site at once with Grok](https://xspeedcache.com/agent/grok/fleet/)

## Documentation

- How to connect Cloudflare: https://xspeedcache.com/docs/cloudflare/
- How to serve assets from a CDN: https://xspeedcache.com/docs/cdn/
- How to enable Page Cache: https://xspeedcache.com/docs/page-cache/
