Remote MCP
Remote MCP lets an AI agent in your editor inspect HTTP request history, WebSocket connections, and inbound mail on your Mercur workspace. Connect with OAuth (URL only) or a workspace API key — no local install and no npm package.
Use it when you are debugging webhooks or mailbox deliveries and want the agent to list recent items, open a failed delivery, and read the payload that actually arrived.
1. Add Mercur to your MCP client (OAuth)
Paste this as a remote / HTTP MCP server. Your client opens a browser; sign in and pick a Solo or Team workspace.
{
"mcpServers": {
"mercur": {
"url": "https://console.mercur.sh/api/mcp"
}
}
}On localhost, use your console origin instead of https://console.mercur.sh.
Works with Cursor, Claude Desktop, and other clients that support remote MCP over HTTP and OAuth.
Open Workspace Settings
2. Optional: workspace API key
If your client cannot run OAuth, create a key under Settings → Workspace → API keys
and paste a snippet with Authorization: Bearer mcr_…. Any workspace member can create
or revoke keys. Copy the secret immediately — Mercur shows the full token once.
Revoke OAuth grants under Settings → Workspace → Connected MCP clients.
3. Ask the agent to inspect traffic
Once the server is connected, ask the agent to list your tunnels or mailboxes and inspect recent traffic — for example a failed webhook or an inbound test email.
The agent can only see endpoints, logs, and mail in the workspace that owns the grant or API key.
Tools
Mercur exposes read-only tools:
list_endpoints— list HTTP endpoints in the workspacelist_requests— browse request history as summaries (method, path, status, timing). No bodies or headers in the list. Optional filters: path, method, status, session, time range, and paginationget_request— open one request in full, including headers and bodieslist_connections— browse WebSocket connection history as summaries (path, state, timing). No handshake headers or payloads. Optional filters: path, state, paginationget_connection— open one connection’s handshake (headers, close). No frame payloadslist_connection_events— browse lifecycle and message events as summaries. No payloads. Pagination onlyget_connection_event— open one event in full, including the stored payloadlist_mailboxes— list temporary@mercur-mail.cominboxes (id, address, name)list_messages— browse inbound mail as summaries (from, subject, date). No bodies or headers in the list. Pagination onlyget_message— open one message in full (headers, text, html, attachment metadata). No raw MIME or file bytes
Typical HTTP flow: list_endpoints → list_requests → get_request.
Typical WebSocket flow: list_endpoints → list_connections → list_connection_events
→ get_connection_event.
Typical mail flow: list_mailboxes → list_messages → get_message.
Revoking access
Disconnect an OAuth client from Settings → Workspace → Connected MCP clients, or revoke an API key from API keys. The client stops working with that token immediately.
Related
- Product overview: /mcp
- Temporary mailboxes: /docs/temporary-mailboxes
- WebSocket inspector: /docs/websocket-inspector
- Step-by-step guide: /blog/debug-webhooks-with-cursor-mcp
- Plans and pricing: /pricing