npx, and no local process (Claude Desktop is the exception below). Point the client at https://api.tallwatch.com/mcp with a Bearer . The agent can check org status, list monitors, triage incidents, and (with a write key) pause or ack. Same surface as the for ops work. The app UI still uses your session cookie.
Setup
- Create a key in . The
tw_live_…secret is shown once. - Copy prompt on that page pastes setup into the agent, or pick your client below.
- Keep the key in user-level config, not a committed project file.
/mcp.
- Cursor
- VS Code
- Claude Code
- Claude Desktop
- Codex
- Devin
- Gemini
- Cline
- Continue
- T3 Chat
User: You can put the secret in the environment instead:
~/.cursor/mcp.json. Project: .cursor/mcp.json. Remote entries use url and headers. Do not set type."Authorization": "Bearer ${env:TALLWATCH_API_KEY}". Reload MCP in Cursor Settings.Tools
Same ops surface as the (minus browser login / browse). Preferget_status when the user asks what is broken. UptimeRobot import is in the app (Monitors → Import) and CLI — not an MCP tool.
Create / update monitors
create_monitor and update_monitor use the shared CreateMonitor contract:
- Non-heartbeat: at least three regions.
- Fields:
name,type,config,regions,interval_sec(optionalnotify_after_sec,escalation_policy_id,project_id). - Consensus is fixed (m=1 / k=2). Do not send
consensus. - Removed fields (
depends_on_monitor_ids,tags) are rejected / ignored — do not send them.
list_monitors over many get_monitor calls.