FlavourSuite AI documentation
Everything you need to connect AI agents β Claude, Cursor, ChatGPT, and any MCP client β to your WordPress site, safely.
Quick start
- Install and activate the plugin (WordPress 6.9+, PHP 7.4+).
- Go to Settings β FlavourSuite AI and switch on βExpose this site to AI agents over MCPβ. Until you do, the endpoint doesn't exist β installing changes nothing.
- Create an Application Password: Users β Profile β Application Passwords, give it a name like
my-agent, and copy the generated password. Agents authenticate as this user and can only see and do what this user can. - On the settings page, paste the Application Password into the snippet builder β it produces a finished configuration to copy into your MCP client (per-client guides below).
- Ask your agent something: βGive me an overview of my site.β
Every tool has its own switch. Read-only tools are on by default; anything that writes data (the propose tools) stays off until you enable it.
Connect your agent
Your endpoint is https://example.com/wp-json/flavoursuite-ai/mcp (shown on the settings page). Authentication is HTTP Basic with your WordPress username and the Application Password, sent as a header:
Authorization: Basic <token>
echo -n 'yourname:xxxx xxxx xxxx xxxx' | base64 (the spaces WordPress shows in the password are fine β it ignores them).
Which client? If you're not a developer, use Claude Desktop β it's a one-time copy-paste into a config file, no terminal needed. Developers working in an editor will want Claude Code, Cursor, VS Code, or Codex, which all take the same URL + header.
Claude Desktop (best for non-developers)
- Install Node.js if you don't have it (the standard installer, all defaults).
- In Claude Desktop open Settings β Developer β Edit Config. That opens
claude_desktop_config.json(on Windows:%APPDATA%\Claude\, on Mac:~/Library/Application Support/Claude/). - Paste this, with your site's URL and the token from the settings-page generator, save, and restart Claude Desktop:
{
"mcpServers": {
"flavoursuite": {
"command": "npx",
"args": [
"mcp-remote",
"https://example.com/wp-json/flavoursuite-ai/mcp",
"--header",
"Authorization: Basic <token>"
]
}
}
}
Your site's tools appear under the π icon in new conversations.
mcp-remote bridge? Claude's custom connectors UI (Settings β Connectors β Add custom connector) connects from Anthropic's cloud, not your machine, and authenticates with OAuth β so it can't send an Application Password header and can't reach local/intranet sites. The bridge above runs on your computer and works everywhere. A future FlavourSuite version may add OAuth so the connector UI works directly.
Claude Code
claude mcp add --transport http flavoursuite \
https://example.com/wp-json/flavoursuite-ai/mcp \
--header "Authorization: Basic <token>"
Verify with claude mcp list β the server should show β connected. Add --scope user to make it available in every project.
Cursor
Add to .cursor/mcp.json in your project (or ~/.cursor/mcp.json globally; also editable via Settings β Tools & MCP):
{
"mcpServers": {
"flavoursuite": {
"url": "https://example.com/wp-json/flavoursuite-ai/mcp",
"headers": {
"Authorization": "Basic <token>"
}
}
}
}
VS Code (GitHub Copilot)
Copilot's agent mode supports MCP natively. Add to .vscode/mcp.json in your workspace (or your user profile's mcp.json) β note the top-level key is servers, not mcpServers:
{
"servers": {
"flavoursuite": {
"type": "http",
"url": "https://example.com/wp-json/flavoursuite-ai/mcp",
"headers": {
"Authorization": "Basic <token>"
}
}
}
}
Codex (OpenAI)
Add to ~/.codex/config.toml (shared by the Codex CLI and IDE extension). Use http_headers, not bearer_token_env_var β WordPress expects Basic auth, not a Bearer token:
[mcp_servers.flavoursuite]
url = "https://example.com/wp-json/flavoursuite-ai/mcp"
http_headers = { "Authorization" = "Basic <token>" }
Verify by running /mcp inside a Codex session.
ChatGPT
ChatGPT adds remote MCP servers via Settings β Connectors β Advanced β Developer Mode (Plus/Pro/Business plans), then Add custom connector with your endpoint URL. Two limitations to know: connections originate from OpenAI's cloud (your site must be publicly reachable over HTTPS), and its custom-connector auth supports OAuth or pasted tokens sent as Bearer β not the Basic scheme Application Passwords use. Until FlavourSuite ships OAuth support, use one of the clients above with ChatGPT-side workflows, or front your endpoint with an OAuth proxy.
Other clients (Cline, Windsurf, LibreChat, β¦)
Any MCP client that supports Streamable HTTP works: give it the endpoint URL and the Authorization: Basic <token> header β the JSON shape is usually identical to the Cursor example above.
What agents can do
| Tool | What it does | Default |
|---|---|---|
site-overview | WordPress/PHP versions, active plugins, content counts (administrators only) | on |
list-recent-posts | Recent published entries of any public post type | on |
search-content | Full-text search across public content, with snippets | on |
site-policies | Privacy, terms, returns, shipping, FAQ and contact pages with their text | on |
get-custom-css | Read the current Additional CSS | on |
list-change-requests | Status of the agent's proposals (pending / applied / rejected / rolled back) | on |
propose-css | Propose a change to Additional CSS β creates a pending change request | off |
propose-content-edit | Propose a new title/content for a post or page β same review flow | off |
woo-store-overview | WooCommerce product/order counts, currency (appears when WooCommerce is active) | on |
fluent-crm/* | CRM context, campaigns, automations (appears with FluentCRM 3.0+; no contact-level data) | on |
First prompts to try
- βGive me an overview of my site β what's installed and how much content is there?β
- βWhat do my shipping and returns policies say? Answer as if a customer asked.β
- βSearch my site for everything mentioning gift cards and summarize it.β
- βHow is the store doing β how many orders are processing right now?β
- With propose tools enabled: βThe headings on my site feel cramped β propose a CSS improvement and I'll review it.β
Approvals: agent writes, your call
No tool writes to your live site. When an agent uses a propose tool, it creates a change request β a stored before/after pair β and gets back a review link. Nothing changes until a human approves it in wp-admin.
- Enable
propose-cssand/orpropose-content-editunder Settings β FlavourSuite AI. - The agent proposes; the proposal appears under Tools β Agent Changes as a red/green diff.
- You Approve & apply, or Reject. Applied changes keep a Roll back button that restores the exact before-state.
Content edits are additionally covered by WordPress revisions, so there's always a second way back.
Security model
- Off by default. The MCP endpoint isn't even registered until an administrator enables it.
- No anonymous access. Every request must authenticate as a real WordPress user via an Application Password; revoke the password and access ends immediately.
- Capabilities enforced per call. Each tool re-checks the connected user's WordPress capabilities β an editor's agent can't read admin-only data.
- Writes are proposals. Applying a change re-checks the approver's capabilities at click time, behind a nonce, in wp-admin.
- Audited. The settings page shows who called which tool, when, and whether it succeeded. Arguments and results are never stored.
- Nothing leaves your site. No API keys, no outbound requests. Agents connect to you.
Troubleshooting
The agent can't connect (401 / unauthorized)
- Your site must use HTTPS. WordPress disables Application Passwords over plain HTTP on live sites β this is the most common cause. (Local development environments are exempt.)
- Check the Base64 token: it must encode
username:application-passwordβ your login name, not your email, and the application password, not your account password. - Some security plugins disable Application Passwords entirely; check their settings.
The endpoint returns 404
- The master switch is off β enable it under Settings β FlavourSuite AI. The route genuinely doesn't exist while disabled.
- Permalinks may need a refresh: Settings β Permalinks β Save.
A tool is missing from the agent's list
- Propose tools are off by default β enable them per tool in settings.
- WooCommerce and FluentCRM tools only appear while those plugins are active (FluentCRM 3.0+).
- After changing settings, some clients cache the tool list β reconnect or restart the client.
Applying a proposal says it's stale
That's the safety net working: the CSS or post changed after the agent proposed. Reject the request and ask the agent to propose again from the current state (it will re-read via get-custom-css or the content tools).
Something not covered here? Open an issue on GitHub.