@apex-inc/mcp-server
MCP server for Apex. Your coding agent talks to the same Apex the dashboard uses.
Docs: app.apex.inc/docs/mcp
Install from Apex
- Open Settings → AI Agents.
- Leave Device flow selected.
- Click Install in Cursor or Install in VS Code.
No key goes in the file. The first Apex tool call prints an approval link.
Manual config
Add to .cursor/mcp.json (or your MCP client's equivalent). Those npx arguments are required.
{
"mcpServers": {
"apex": {
"command": "npx",
"args": ["-y", "-p", "@apex-inc/mcp-server@latest", "mcp-server"],
"env": {
"APEX_URL": "https://app.apex.inc",
"APEX_WORKSPACE_KEY": "your-workspace-key"
}
}
}
}
For a static key (CI, or a locked-down laptop), add APEX_API_KEY (apex_uk_… or apex_sk_…). Generate it on Settings → AI Agents.
| Variable | Required | Notes |
|---|---|---|
APEX_URL | No | Defaults to https://app.apex.inc. Set http://localhost:3000 for local Apex. |
APEX_WORKSPACE_KEY | No | Shop this session starts on. APEX_PROJECT_KEY is the old name and still works. |
APEX_API_KEY | No | Omit when you use device flow. |
The editor Tools list is the live catalog. Do not treat a short list in a blog post as the count.
Screenshot CLI
Playwright runs on their machine, then the picture uploads. Apex cannot sign into their product.
# Experiment arm (public or localhost)
npx @apex-inc/mcp-server screenshot \
--experiment <id> --variant control --url https://example.com --preview
# Milestone still — signed-in product
npx playwright codegen --save-storage .apex/auth.json https://app.theirproduct.com
npx @apex-inc/mcp-server screenshot \
--milestone <id> --state not_yet --url https://app.theirproduct.com/reports \
--storage-state .apex/auth.json
npx @apex-inc/mcp-server screenshot \
--milestone <id> --state done --url https://app.theirproduct.com/reports \
--storage-state .apex/auth.json
--storage-state is a login file on this machine. Apex never receives it — only the picture. Install Playwright once: npm i -D playwright && npx playwright install chromium.
License
MIT — see LICENSE