Overview
Model Context Protocol (MCP) is the open standard AI assistants use to talk to apps. OptAEO exposes an MCP endpoint at /api/mcp that speaks JSON-RPC 2.0. Connect Claude Desktop, Cursor, or VS Code via the bridge documented below and your assistant can read your Shopify catalog, pull AEO scores across ChatGPT / Perplexity / Gemini / Claude, run scans, and (Enterprise) apply fixes — directly from a chat window.
Sample prompts once connected
Plan tiers
MCP access starts on Business. See tier comparison.
Before you start
- An OptAEO Business or Enterprise plan (free trial available). Sign in and check your plan badge in the sidebar.
- One of Claude Desktop, Cursor, or VS Code installed on your machine.
- Node.js with npx. Already installed if you have macOS Command Line Tools or any standard Node setup. The
mcp-remotebridge package will auto-install on first run — no manual step.
Claude Desktop and Cursor speak MCP only over stdio — a local process piping JSON-RPC over standard input and output. OptAEO's MCP server is HTTP. The mcp-remote package runs locally as a stdio shim and proxies every call to our HTTP endpoint with your Bearer key attached. VS Code supports stdio too; we use the same bridge for consistency.
Step 1 · Generate your MCP API key
- Open OptAEO. Click Settings in the sidebar.
- Click the Agent Mode tab in the tab strip.
- Find the MCP Access card.
- Click Generate Key. The plaintext key shows once in green — copy it immediately. We hash it server-side and never store the plaintext, so you cannot retrieve it later.
- The key looks like:
optk_mcp_aB3xY...(41 characters total). Paste it somewhere temporary — Notes, a TextEdit window — for the next step.
Key not what you expected? Click Revoke next to the key in Active Connections, then Generate Key again to get a fresh one.
Step 2A · Connect Claude Desktop
- Find the config file.
macOS:~/Library/Application Support/Claude/claude_desktop_config.json
Windows:%APPDATA%\Claude\claude_desktop_config.json - Open it in any text editor. If it does not exist, create it with an empty JSON object
{}. - Add the
mcpServersblock below. If the file already has other settings, addmcpServersalongside them — do not replace the whole file.
{
"mcpServers": {
"optaeo": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://optaeo.ai/api/mcp",
"--header",
"Authorization:Bearer PASTE_YOUR_OPTAEO_MCP_KEY_HERE"
]
}
}
}Replace PASTE_YOUR_OPTAEO_MCP_KEY_HERE with the key from Step 1. Keep the Bearer prefix and the surrounding quotes intact. Save the file.
- Restart Claude Desktop fully. Cmd+Q on macOS — closing the window is not enough. Then relaunch from /Applications. First run installs
mcp-remotevia npx (~15 seconds, one-time).
Step 2B · Connect Cursor
Cursor's MCP config lives in ~/.cursor/mcp.json (user-level) or your project's .cursor/mcp.json (workspace). The format matches Claude Desktop almost exactly:
{
"mcpServers": {
"optaeo": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://optaeo.ai/api/mcp",
"--header",
"Authorization:Bearer PASTE_YOUR_OPTAEO_MCP_KEY_HERE"
]
}
}
}- Replace
PASTE_YOUR_OPTAEO_MCP_KEY_HEREwith your key. - Save the file.
- Cursor → Settings → Features → Model Context Protocol → confirm optaeo is listed and enabled.
- Restart Cursor.
Step 2C · Connect VS Code
VS Code's MCP support (via the GitHub Copilot Chat extension) reads .vscode/mcp.json (workspace) or your global User settings. The schema uses servers rather than mcpServers, with an explicit type: "stdio" field:
{
"servers": {
"optaeo": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://optaeo.ai/api/mcp",
"--header",
"Authorization:Bearer PASTE_YOUR_OPTAEO_MCP_KEY_HERE"
]
}
}
}- Save as
.vscode/mcp.jsonin your project root. - Replace
PASTE_YOUR_OPTAEO_MCP_KEY_HEREwith your key. - Open Copilot Chat (Ctrl+Alt+I / Cmd+Ctrl+I). Run
/mcp.list— confirm optaeo appears with 6 (Enterprise) or 4 (Business) tools.
Step 3 · Verify the connection
Open a fresh chat in your AI client. Type:
List my OptAEO products with AEO score below 85.
Your assistant will request permission to call list_products with below_score: 85. Approve. You should get back your real OptAEO catalog with scores. If you are on Enterprise, try:
Run the OptAEO agent now.
You will see the run_agent tool fire and return a summary like "Agent run complete. Applied N fix(es) across M product(s)." If your store is already at Green tier, you might see "0 fixes applied" — that is correct. The plumbing is what matters here, not whether anything was eligible to fix.
Troubleshooting
fix_product and run_agent you need Enterprise.jq or paste it into jsonlint.com to find the error.xcode-select --install in Terminal to install Command Line Tools (includes node + npm + npx). On Windows, download from nodejs.org.Security notes
The MCP key in your config file is stored in plaintext on your machine. Anyone with file access to your home directory can read it. If your laptop is yours-only and full-disk-encrypted, this is fine — same threat model as your ~/.ssh/ keys. If shared, revoke the key after each use.
The MCP endpoint is HTTPS, so the key is encrypted in transit. We never log keys server-side; only their SHA-256 hash is stored. The last_used_at timestamp is updated on every call so you can spot a leaked key — if a revoked key shows recent activity, audit the machines that had it.
Keys are scoped to MCP operations only. They cannot read merchant settings, billing, or any data outside the MCP tool surface. They cannot be used for the regular OptAEO REST API.
Frequently asked questions
Content-Type: application/json and Authorization: Bearer optk_mcp_... headers. POST to the endpoint URL. See the Help page for example calls.