How Grok Bot handles this
Picture a Bot whose job is looking after your sites. Twice a week its routine calls cloudflare_verify on each one through the xspeedhub plugin and posts which sites still resolve and which came back with an error. The routine runs on the Bot's cloud computer, so it happens with your laptop closed, and the check purges nothing. When a token has been revoked or a Zone ID changed, you hear about it from the Bot instead of from a failed purge during a launch.
The actions happen in a chat you take part in. Attach the plugin with @ and ask for one: purge_cloudflare clears the edge cache for one site's zone, and set_cloudflare_dev_mode with enabled true bypasses the edge for about three hours. Neither accepts site: "all", so several sites mean several calls. After a content change, ask for purge_cache on the server first and the edge purge after, so the edge does not refill from an old server copy. Because the Bot keeps context, it can tell you later in the thread when it turned development mode on, which helps because no Hub tool reports whether dev mode is on.
On a Team Bot, the owner adds the plugin from the Setup panel and each teammate signs in to xSpeed Hub with their own account, so whether a teammate's request can purge depends on that person's workspace role. Cloudflare credentials stay in the xSpeed Cache panel in wp-admin on each site; nobody should paste a token into a Bot chat.
Set up Grok Bot once
Already connected? Skip to the prompts. Alternatives and troubleshooting are on the Grok Bot guide.
1Put 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.
2Ask your Bot to add xSpeed Hub
In a chat with your Bot, ask it to add a custom remote HTTPS MCP server with this URL. xAI says a plugin you add from your own chat is personal and account-wide, so every Bot on your account can use it. When the browser opens, approve access on the xSpeed Hub page.
Add a custom remote HTTPS MCP server called xspeedhub with the URL https://app.xspeedcache.com/xspeed/mcp and sign me in.
3Attach it and ask a first question
Type @ in a chat to attach the xspeedhub plugin to the task, then ask something that names xSpeed Hub. A list of your sites means the connection works.
Use @xspeedhub (xSpeed Hub) to list my sites and tell me which ones have page caching turned off.
Full Grok Bot setup, sign-in options and FAQ
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. When an action needs approval, Grok Bot offers Allow once, Always allow or Deny. Always allow saves a rule, so the same kind of call no longer stops for you. Auto-review rules under Settings, General, Auto-review can force Ask first or allow matching actions automatically, and Ask first wins when both match. xSpeed Hub has no confirmation step of its own, so a Hub write tool you always allow runs as soon as your connection allows writes. Add Ask first rules for purge_cache, update_settings, toggle_cache, optimize_site and the other write tools. For read-only access, sign in as a Viewer member of the workspace.
What do I ask?
Three prompts written for Grok Bot. More for this job are below.
Create a routine: every Monday and Thursday, use @xspeedhub (xSpeed Hub) to verify Cloudflare on every site and post only the failures.
Use @xspeedhub (xSpeed Hub) to purge shop's page cache and then its Cloudflare edge.
With xSpeed Hub, switch Cloudflare development mode on for blog and tell me when you switched it.
What happens, step by step
When Cloudflare sits in front of a WordPress site, it keeps its own copy of your files at the edge. Through xSpeed Hub an agent can check that the site's Cloudflare credentials still work, purge the edge cache, and turn development mode on or off. All three need Cloudflare connected in xSpeed on that site, and each works on one site at a time.
01
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.
02
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.
03
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.
04
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.
05
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 worth keeping
- 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 Bot
Grok Bot offers Allow once, Always allow or Deny when a call needs approval, and Always allow saves a rule. Do not choose it for set_cloudflare_dev_mode or purge_cloudflare: after that, a routine or a vague chat can switch development mode on with nobody asked, and the site is slower for real visitors for about three hours. The Hub has no confirmation step of its own, and its instructions to the agent do not list set_cloudflare_dev_mode among the tools to confirm. Add Ask first rules for both writes under Settings, General, Auto-review, because Ask first wins over an automatic allow. A routine's Test run performs real work, including calls to connected tools, so test with the verify-only prompt. For a Bot that can only verify, sign in as a Viewer member of the workspace; the Hub then refuses both writes.
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
Keep going
Manage Cloudflare with other agents
More with Grok Bot
Documentation
- How to connect Cloudflare
- How to serve assets from a CDN
- How to enable Page Cache
- How to write prompts for xSpeed Hub
- Grok Bot + xSpeed
- Every AI agent that works with xSpeed
From the blog