What it is
realuptime runs a standalone Model Context Protocol server at https://mcp.realuptime.io/mcp, a stateless HTTP endpoint (JSON-RPC 2.0, no session state) that exposes seven tools mirroring the REST API exactly. Point any MCP client at that URL with a bearer key, and it can list your monitors, pull a check's live status, create or update checks, and read recent incidents, the same data and the same rules as the dashboard, just callable by an agent instead of a human clicking around.
This is a company-wide, paid-tier feature by design, not a one-off add-on: the same key and the same rules gate the REST API too. See the full API reference for authentication, rate limits, and every REST endpoint the MCP tools mirror.
The seven tools
| Tool | Equivalent to | Scope required | Arguments |
|---|---|---|---|
list_checks | GET /checks | read | none |
get_check_status | GET /checks/:id | read | checkId (uuid) |
create_check | POST /checks | read_write | name, url, intervalSeconds?, regions? |
update_check_regions | PATCH /checks/:id | read_write | checkId (uuid), regions |
delete_check | DELETE /checks/:id | read_write | checkId (uuid) |
list_status_pages | GET /status-pages | read | none |
list_incidents | GET /incidents | read | limit? (1 to 500) |
list_checks: List every monitor on the account: id, name, url, and check interval.get_check_status: The current per-region status and aggregate status for one monitor. Same staleness-aware aggregation as the public status page: operational, degraded, down, stale, or unknown.create_check: Add a new monitor. Enforces the account's tier limit and the same target-safety validation as the dashboard and REST API.update_check_regions: Change which of the 4 live regions probe an existing monitor. At least one region is required.delete_check: Remove a monitor and its history.list_status_pages: List the account's public status page(s), including slug and URL path.list_incidents: List recent incidents across every monitor on the account, newest first.
Every tool returns the same JSON shape as its REST equivalent, as a text content block. A not-found, over-limit, unsafe-target, or rate-limited condition sets isError: true on the tool result rather than throwing, so a client sees a clean, structured failure instead of a crash.
Authentication and permission scopes
The MCP server uses the same bearer API key as the REST API, generated from the dashboard's API & MCP access section. Every key has a scope: read can call the four read-only tools above; read_write can also call create_check, update_check_regions, and delete_check. A read key calling a write tool gets a clean isError: true result, not a crash or a silent no-op. Full detail, including rate limits (120 reads/min, 30 writes/min, shared with the REST API) and request-size limits, is in the API reference.
Tier requirements
The MCP server, like the REST API, requires a Growth or Scale plan. A key from a free-tier account is rejected at the transport level before any tool runs. See pricing for what each plan includes.
Setup
Claude Code
claude mcp add --transport http realuptime https://mcp.realuptime.io/mcp \
--header "Authorization: Bearer ru_live_..."Claude Desktop, or any MCP client using a JSON config
Add an entry to your client's MCP server configuration:
{
"mcpServers": {
"realuptime": {
"url": "https://mcp.realuptime.io/mcp",
"headers": {
"Authorization": "Bearer ru_live_..."
}
}
}
}Any other MCP client
Point it at https://mcp.realuptime.io/mcp over HTTP, with theAuthorization: Bearer ru_live_... header set on every request. A client library normally handles the initialize to tools/list to tools/call sequence for you; the request below is only useful as a manual sanity check that the server is reachable and your key works.
curl -X POST https://mcp.realuptime.io/mcp \
-H "Authorization: Bearer ru_live_..." \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1"}}}'Getting a key
Generate an API key from the dashboard's API & MCP access section on a Growth or Scale account. The key is shown once, at creation, stored hashed server-side; if you lose it, generate a new one and revoke the old.