How do I connect Windsurf to xSpeed?
Put your sites in xSpeed Hub once, then add one URL to Windsurf.
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.
2Add xSpeed Hub for the Devin Local agent
Run this in a terminal. Devin Local shares its MCP configuration with Devin CLI, and -s user saves the server to ~/.config/devin/mcp_config.json (%APPDATA%\devin\mcp_config.json on Windows) so it applies to every project. Without -s, the command saves to local scope, which is the current project only.
devin mcp add -s user xspeedhub https://app.xspeedcache.com/xspeed/mcp
3Sign in
Run the login command and approve access on the xSpeed Hub page that opens in your browser. There is no token to paste, and the client keeps the credentials it receives. If the server later shows Needs auth in the Devin Local MCP list, click Authenticate, or run devin mcp logout and then login again.
devin mcp login xspeedhub
4Legacy Cascade agent, or a connection token alternative
Cascade reads the same kind of file but names the remote address serverUrl. Open the Cascade panel, click the ... Actions menu and choose the MCP config file, then add the entry. To use the connection token instead of a browser sign-in, add a headers object with Authorization set to Bearer and your token; both agents accept headers. Only the workspace owner sees the token, on the Hub's Connect AI page.
{
"mcpServers": {
"xspeedhub": {
"serverUrl": "https://app.xspeedcache.com/xspeed/mcp"
}
}
} Use xSpeed Hub to list my sites and show whether page caching is on for each one.
You: Using xSpeed Hub, is the shop preloader still running? If it finished, check how warm the cache is.
get_preloader_status(site: shop) read-only
→ finished, 340 of 340 URLs warmed
get_cache_status(site: shop) read-only
→ page cache on, 340 cached pages, hit ratio 64% in the last 24h
Windsurf: The preloader finished and all 340 URLs are cached. The hit ratio over the last day is 64%. Want a cached versus uncached timing on shop?
You: Yes, run it.
run_benchmark(site: shop) read-only
→ cached 38 ms, uncached 412 ms (server response time, no Lighthouse score)
Windsurf: A cached page answers in 38 ms against 412 ms uncached. That is server response time only; run a PageSpeed test if you want a score.
Using it
Prompts to try in Windsurf
Paste one as it is, or change the site name.
With xSpeed Hub, show page cache status and hit ratio for every site, and flag anything under 70%.
Use xSpeed Hub to purge the blog cache, then start the preloader and report how many URLs it queued.
Use xSpeed Hub to run a mobile PageSpeed test on shop and compare it with the stored score history.
Ask xSpeed Hub to preview a safe optimize_site pass on docs. Do not apply it.
Using xSpeed Hub, tell me whether Cloudflare is connected on shop before you purge anything.
What can Windsurf do with xSpeed?
A guide for each job, written for Windsurf.
Purge the WordPress cache with Windsurf
Clear stale pages after a deploy, an edit or a plugin update, on one site or all of them.
Find out why WordPress pages are not cached with Windsurf
Work out why a site misses the cache, serves slow pages or shows a low hit ratio, using read-only checks first.
Scan a website for speed problems with Windsurf
Get a graded speed report with the fix for every failing check and a link you can share, for your own site or any public URL.
Run and track PageSpeed tests with Windsurf
Read the PageSpeed scores a site already has, run a new test when something changed, and tell a Lighthouse score from a cache benchmark.
Raise a WordPress site's PageSpeed score with Windsurf
Preview and apply xSpeed's recommended settings to a site, check the pages still work, and be told plainly what caching cannot fix.
Tune WordPress cache settings with Windsurf
See which modules a site has, read their current settings, change them, and turn page caching on or off.
Warm the WordPress cache with Windsurf
Fill the page cache before visitors arrive, for example right after a purge or a deploy.
Set up the Redis object cache with Windsurf
Connect a site to Redis or Memcached so database results survive between requests.
Manage Cloudflare caching with Windsurf
Check the Cloudflare connection, clear the edge cache and switch development mode on or off for a site.
Manage every WordPress site at once with Windsurf
Run one action across all of your sites, or a chosen few, and read the result site by site.
Trust and safety
Does Windsurf ask before it changes my site?
The Devin Local agent prompts for approval before it calls any MCP tool. In the prompt you can allow that one tool or every tool on the xspeedhub server, for this session or permanently, and permission rules such as mcp__xspeedhub__get_cache_status allow, deny or always ask for a named tool. Smart mode lets a fast model run what it judges safe without a prompt, and Bypass mode approves everything, so with either of those a write reaches the Hub as soon as your connection allows writes. xSpeed Hub has no confirmation step of its own.
xSpeed Hub
xSpeed Hub has no confirmation step of its own. Read tools change nothing on your sites, with one exception to know about: contact_support sends an email to xSpeed support, and a read-only connection can still call it. A write tool (a purge, a settings change, a cache toggle, or a speed test that spends the shared allowance) runs as soon as your connection allows writes. Three things stand between a prompt and a change: your connection's scope, because a read-only connection refuses every write tool (the connection token has a Read-only everywhere switch, and a Viewer member only ever gets read access); your AI client's own tool-approval prompt; and the Hub's instructions to the agent, which tell it to confirm the target site and to ask once before a write that touches every site.
Good to know
- The name changed. docs.windsurf.com now redirects to the Devin documentation, and the editor is Devin Desktop. Menu labels and package names may still say Windsurf in places.
- Without -s user, devin mcp add saves to local scope, which is the current project only, so the server looks missing in other projects.
- Each MCP client keeps its own OAuth session. Signing in to xSpeed Hub from another tool does not sign in Devin, and you run devin mcp login separately.
- Cascade can use at most 100 tools at a time across all servers. xSpeed Hub adds 29.
Reference
What is Windsurf?
Windsurf is an AI code editor that now ships as Devin Desktop. New tabs start with the Devin Local agent, and the older Cascade agent stays available for existing conversations.
MCP, the Model Context Protocol, is how both agents reach services outside your machine. Adding xSpeed Hub as a remote HTTP server gives them the Hub's caching tools: status, purge, settings, preloader, object cache, Cloudflare and speed tests, for every site in your workspace.
At a glance
- Made by
- Cognition
- Type
- Editor
- Connects with
- devin mcp add, then devin mcp login (Cascade: mcp_config.json)
- Sign-in
- OAuth sign-in or connection token
- Last checked
- October 2026
Why use Windsurf with xSpeed?
Prompt-by-default in Devin Local
Devin Local asks before it calls an MCP tool, and the permission rules let you allow single xSpeed reads while every write keeps asking.
Terminal and editor share one setup
Devin Local shares its MCP configuration with Devin CLI, so the commands that add and sign in the server are ones you may already use in a terminal.
The whole fleet from one tab
The Hub fronts every site you connected. Ask about one site by name, or ask a question that spans all of them and read the per-site result.
How does Windsurf compare with other AI clients?
Every client below reaches the same 29 Hub tools once connected. What differs is where it runs, how you add the server and how it signs in.
| Client | Made by | Type | How you connect it | Sign-in |
|---|---|---|---|---|
| Windsurf | Cognition | Editor | devin mcp add, then devin mcp login (Cascade: mcp_config.json) | OAuth sign-in or connection token |
| Cursor | Anysphere | Editor | mcp.json with a url, then OAuth | OAuth sign-in or connection token |
| GitHub Copilot in VS Code | GitHub / Microsoft | Editor | mcp.json in your VS Code user profile, or MCP: Add Server | OAuth sign-in or connection token |
| Zed | Zed Industries | Editor | context_servers in settings.json, or Settings, AI, MCP Servers | OAuth sign-in or connection token |
| Kiro | Amazon (AWS) | Editor | an mcp.json entry with a url, then a browser sign-in | OAuth sign-in or connection token |
Which way should I connect?
Windsurf can use the Hub, one site's own MCP server, or the no-account Scan MCP. The Hub is the one most people want.
xSpeed Hub MCPMost people
https://app.xspeedcache.com/xspeed/mcp - Best for
- Most people. One URL in your AI client, every site behind it.
- Reaches
- Every site in your workspace, one connection
- Sign-in
- OAuth sign-in in the browser, or a connection token in an Authorization header
- Tools
- 29 tools (16 read, 13 write), seven of them can act on every site at once
xSpeed Cache Site MCP
https://your-site.com/xspeed/mcp - Best for
- A single site, or work the Hub does not expose, such as database cleanup.
- Reaches
- One WordPress site
- Sign-in
- OAuth sign-in by a site admin, or the site's own token in an Authorization header
- Tools
- The full per-site tool set plus run_command for the WP-CLI surface
xSpeed Scan MCP
https://xspeedcache.com/scan/mcp - Best for
- Grading a site you do not run, or trying xSpeed before you install anything.
- Reaches
- Any public URL, read-only
- Sign-in
- None. No account.
- Tools
- 5 tools: run_speed_scan, get_speed_scan and three product-info tools
WP-CLI
wp xspeed … - Best for
- Agents that already run commands on the server, such as Claude Code or Codex over SSH.
- Reaches
- The site whose server the agent has a shell on
- Sign-in
- Your server login
- Tools
- Every xSpeed command: cache, purge, preloader, objcache, cf, score, settings and more
Frequently asked questions
Also works with
Documentation
From the blog
- How to Let Claude or ChatGPT Manage Your WordPress Site Speed (via MCP)
- Connecting Claude to a WordPress Fleet in 2026: One of These Five Routes You May Already Be Paying For
- xSpeed Cache MCP vs WP Rocket MCP in 2026: One Connects Once, the Other Once Per Site
- 10 Best WordPress MCP Servers in 2026: 486 in the Directory, Four With More Than Ten Reviews