Your AI code editor probably writes a real chunk of your code by now. Meanwhile your CMS still lives in a browser tab, and every “quick content change” means leaving the editor to go click through wp-admin like it’s 2015.
MCP closes that gap. Hook WordPress up as an MCP server and Cursor’s chat can draft posts, batch-fix alt text, pull your analytics, and triage comments, all without leaving the editor. The whole setup takes about ten minutes, and the plugin behind it is free.
Here’s the developer’s version of the setup: scoped tokens, the config file, seven workflows that are actually worth it, and the guardrails that make giving an AI write access survivable.

Time to get into it.
What MCP actually buys you on WordPress 🧩
The thirty-second version: MCP (Model Context Protocol) is a common language that lets AI clients talk to tools and data sources. WordPress doesn’t speak it natively, which is where Easy MCP AI comes in. It’s a free plugin that turns your site into an MCP server, so any MCP-compatible client (Cursor, Claude, ChatGPT, Gemini, Windsurf, Cline, Manus, n8n) can manage the site through one endpoint. Disclosure, once: it’s built by ThemeIsle, the family WPShout belongs to.
The scope is bigger than “draft a post.” The plugin exposes 243 tools in three layers: 96 core WordPress tools (posts, pages, media, taxonomies, comments, users, menus, CPTs, revisions, blocks, settings), 93 plugin-integration tools (WooCommerce, ACF, The Events Calendar, BuddyPress, and six SEO plugins), and 54 data-integration tools (Google Analytics 4, Search Console, and a row of SEO data providers). It also auto-discovers any plugin that registers WordPress 6.9+ Abilities, no custom code needed.

OAuth or token: pick the route that matches your client
There are two ways in, and the right one depends on the client:
- OAuth 2.0/2.1 one-click for compatible clients like Claude Desktop. The plugin ships a full authorization server (PKCE, refresh-token rotation, Dynamic Client Registration per RFC 7591), so the client registers itself, you approve scopes on a consent screen, done.
- Bearer token for editors and automation: Cursor, Windsurf, Cline, Claude Code, n8n. You create a token in wp-admin, paste it into the client’s MCP config, and that’s the whole handshake.
Tokens aren’t all-or-nothing strings, which is the part that matters. Each token gets a checkbox permission tree (read-only is a first-class option), the raw token is only stored as a SHA-256 hash, every tool call passes a WordPress capability check, and a per-token rate limit (60 requests per minute by default, configurable) keeps a runaway agent from speed-running your database.
“Doesn’t the REST API already do this?”
Yes, and if you’re happy writing fetch calls and auth plumbing for every automation, keep doing that. The difference is who writes the integration. With REST you build and maintain the client, the auth, the error handling, and the permission model yourself, per script. With MCP the client is the AI you already use, the tools are pre-built and typed, and auth, scoping, and logging ship with the plugin. You’re trading a pile of bespoke scripts for one config file and a token.
REST still wins for hard-coded, high-frequency production integrations where you want zero LLM in the loop. MCP wins for the fuzzy, judgment-shaped work (draft this, summarize that, clean up the other thing) that scripts are terrible at.
The setup, in four steps ⚙️
1. Install Easy MCP AI
It’s on WordPress.org (10,000+ active installs, 5.0 out of 5 from 8 ratings as of September 2026, currently at version 1.7.17). Requires WordPress 6.0+ and PHP 7.4. Install from Plugins > Add New, activate, and a new Easy MCP AI menu appears. No Node.js, no external proxy, no second subscription. The plugin itself is free; a few optional SEO-data integrations (Semrush, SE Ranking, DataforSEO) need those vendors’ own paid accounts, while the Ahrefs Domain Rating lookup runs on a free Ahrefs API key.
A word on what the AI can and can’t see once it’s connected. Token scopes map onto ordinary WordPress capabilities, and every single tool call is checked against them. A read-only token can list, query, and report on anything your user role can see, but every write attempt gets rejected. That makes read-only genuinely useful for exploration (traffic questions, content audits, “what’s broken”) while keeping write a deliberate, later grant. Nothing is silently elevated, and the audit log records every call either way.
2. Create a scoped token
Head to Easy MCP AI > API Token & OAuth and create one. The sane default for a first run: read-only on content and analytics. You can grant write per content type later, once the client has earned your trust. Name the token after the client using it (“cursor-laptop”), so the audit log reads clearly later.

3. Point Cursor at the site
Copy your MCP server URL from the plugin’s Dashboard, then add it to ~/.cursor/mcp.json (the exact shape from the plugin’s own setup guide):
{
"mcpServers": {
"wordpress": {
"url": "https://yoursite.com/wp-json/easy-mcp-ai/v1/mcp",
"headers": { "Authorization": "Bearer YOUR_API_TOKEN" }
}
}
}Code language: JSON / JSON with Comments (json)
Restart Cursor, open the AI panel, and your WordPress site is now a tool it can call. Same pattern works for Windsurf, Cline, and friends, just with their config file instead.
4. Smoke-test with three prompts
Verify the loop before you trust it with real work:
- “List my five most recent draft posts.” (read path)
- “What keywords does my homepage rank for, and what are the click counts?” (Search Console integration, if connected)
- “Create a draft post titled ‘MCP smoke test’ with one paragraph about WordPress.” (write path, if your token allows it)
All three should come back with real data from your site. If prompt two says the integration isn’t configured, that’s the Search Console connection in the plugin settings, not a Cursor problem.
Seven workflows worth the wiring 🔧
Once the plumbing works, these are the jobs that actually pay it off:
- Bulk SEO meta sweep. “Find every published post missing a meta description and draft one for each.” That’s Yoast/Rank Math/AIOSEO/SEOPress/Slim SEO/The SEO Framework metadata, readable and writable through the plugin.
- Media alt-text batch. “List media items with empty alt text and write descriptive alt text for each.” Accessibility backlog, gone in one prompt.
- Comment triage. “Show me pending comments, flag the obvious spam, and summarize the rest.” Approve from the chat, or keep it read-only and just get the summary. (If agentic plugins are your thing generally, the WordPress on autopilot piece maps the territory.)
- WooCommerce morning report. “Show me today’s orders and their total revenue.” Sales, top sellers, and revenue reports are all tool calls.
- Analytics questions without the GA4 tab. “Which pages got the most traffic this week?” or “Which queries dropped in clicks?” GA4 and Search Console, answered in the editor.
- Find-and-replace with a brain. “Find posts that mention our old pricing page and list them with links.” The plugin has content find-and-replace built in, and the AI supplies the judgment about which hits actually need editing.
- Custom post type wrangling. Portfolios, listings, courses, reviews: if it’s a registered CPT, the same CRUD tools apply. “Create three draft case studies in our portfolio CPT from these bullet points” is a legitimate prompt.
Notice the pattern: none of these is “write my blog for me.” The ROI is the boring admin you’d otherwise do by clicking around wp-admin for an hour.
One practical note on batch jobs: the default rate limit is 60 requests per minute per token. A 500-image alt-text run is fine, but it’s a paced job, not a burst. For heavy batches, ask the client to work in chunks and check the audit log between them.
The trust layer: guardrails that make this survivable 🛡️
Handing an AI write access to a production site is a real decision, not a vibe. The plugin’s answer is visibility:
- Audit log. Every tool call is recorded with the token used, the arguments, the result, and the client IP, in a searchable activity log. “What did the AI actually do?” is a query, not a guess.
- Change History. Every MCP-originated write gets a before/after snapshot you can diff, with its own admin page and retention controls.
- Scoped tokens. Read-only for exploration, write per content type for automation, revoked in one click when a client leaves the project.
- Rate limits and IP whitelisting for the endpoint, configurable in settings.

The habit to build: read-only first, watch the audit log for a week, then grant write scopes deliberately. The plugin makes that progression cheap, so there’s no excuse for skipping it.
Where this doesn’t fit ⚠️
Honest edges, so nobody discovers them in production:
- It’s a young plugin. Ten thousand installs and a perfect 5.0 score, but from eight ratings. That’s enthusiasm from a small sample, not a track record. Test on staging first.
- It’s not a hosted service. Your AI talks to your site directly. If the site is behind basic auth or unreachable from the client, nothing works until that’s fixed.
- Third-party SEO data costs extra. Semrush, SE Ranking, and DataforSEO need those vendors’ accounts. The plugin itself and the GA4/GSC integrations are free.
- WordPress 7.0’s built-in AI client is a different thing. Core’s new connectors feature has its own model (there’s a developer’s guide to the 7.0 AI client on this site). Easy MCP AI is the plugin route, and it works today on WordPress 6.0+.
Last word 💬
Connecting Cursor to WordPress with MCP is a ten-minute setup that quietly deletes an hour of weekly admin: scoped tokens, one config file, and an audit trail for every action. Start read-only, prove the loop, then hand over the boring work one scope at a time.
Have you wired an AI client into a production WordPress site? What did you trust it with first, and what did you keep read-only?
How to Speed Up Your WordPress Site
With some simple fixes, you can reduce your loading times by even 50-80% 🚀
By entering your email above, you're subscribing to our weekly newsletter. You can change your mind at any time. We respect your inbox and privacy.

