Mirrors hosts an MCP server, so there’s nothing to install or run yourself. Point any MCP client at the hosted endpoint; on first use the client opens your browser to sign in and approve access (standard MCP OAuth, no API keys to paste).
Use the URL without a trailing slash (…/mcp). It must match the OAuth resource the server advertises, and some clients (Cursor) strip a trailing slash before comparing, so a /mcp/ config fails its token exchange. Both forms are served on the wire, but configure the slashless one.
The server exposes the full Mirrors surface, the same operations as the CLI and the web app, so an AI client never has to touch the UI: list_mirrors / get_schema / get_drift, build_mirror / ingest_mirror, list_tools / get_tool, container_start, add_context / distill_summary, generate_proposal / accept_proposal, and more.
This server is for MANAGING mirrors, not for calling their tools. An agent that wants to run against a twin uses the tool plane, which is a different surface for a different job.
How do I connect Claude Code, Cursor, or VS Code?
Point the client at https://api.runmirrors.com/mcp as a streamable-HTTP MCP
server, then complete the browser sign-in the client prompts for. Claude Code and
Codex take a single terminal command, Cursor takes four lines in
~/.cursor/mcp.json, and VS Code takes code --add-mcp.
Claude Code
Cursor
VS Code
ChatGPT
Codex
Claude / Desktop
Run in your terminal:Then run /mcp → mirrors → Authenticate via browser. Add to ~/.cursor/mcp.json:Cursor shows Needs login on the server. Click it to sign in via the browser. Run in your terminal:VS Code prompts to trust the server, then opens the browser to sign in. On chatgpt.com:
- Settings → Apps & Connectors → Advanced → enable Developer mode
- Create → name it Mirrors, MCP server URL
https://api.runmirrors.com/mcp
- Authentication: OAuth → Create, then connect
Sign-in opens in the browser. Needs a Plus/Pro/Business plan (web). Run in your terminal:login opens the browser to sign in; tokens refresh automatically. On claude.ai or Claude Desktop:
- Settings → Connectors → Add custom connector
- Paste
https://api.runmirrors.com/mcp
- Click Add, then Connect
Connect opens the browser to sign in and approve. Works on free and paid plans.
Does Mirrors work with other MCP clients?
Yes. The server is a standard MCP OAuth remote, so any client that speaks streamable HTTP works (Zed, Warp, Goose, Amp, opencode, Cline, LM Studio, Raycast, Windsurf, …):
For stdio-only clients (e.g. JetBrains AI Assistant), bridge via mcp-remote:
How do I use the MCP server in CI or headless?
Skip the browser flow by sending a key instead: mint a workspace key in the web app (Settings → API keys) and pass it as an Authorization header. Every request is scoped to the authenticated workspace:
Most clients disable the OAuth sign-in fallback the moment headers.Authorization is set, so a placeholder value means the connection fails until you replace it with a real key.