MCP Server
Connect Claude, ChatGPT, Cursor or any MCP client to Uptimy, and ask your assistant about your monitoring.
Overview
Uptimy runs a remote Model Context Protocol server. Add it to an AI assistant and you can ask what's down, how a service has performed this week, or why last night's incident opened, and have the assistant post the status page update or schedule the maintenance window for you.
https://mcp.upti.my/mcpIt works with any client that supports remote MCP servers over Streamable HTTP. You sign in with your Uptimy account, so there's no key to copy.
💡 MCP or uptimyctl?
Use the MCP server in chat assistants like Claude and ChatGPT, which can't run commands. If your agent has a terminal, like Claude Code or Cursor, uptimyctl works too and covers more: creating and editing monitors, alert rules and status pages, and exporting your configuration. The MCP server leaves those to the CLI and the app.
Connect your assistant
Claude
In Claude, open Settings → Connectors, choose Add custom connector and enter https://mcp.upti.my/mcp. Claude opens Uptimy to sign in.
ChatGPT
Add a custom connector in ChatGPT's connector settings with the same URL. ChatGPT sends you to Uptimy to sign in.
Claude Code
claude mcp add --transport http uptimy https://mcp.upti.my/mcpThen run /mcp in Claude Code, pick uptimy and choose Authenticate.
Cursor and other clients
Point the client at the server URL; it signs in the same way.
{
"mcpServers": {
"uptimy": {
"url": "https://mcp.upti.my/mcp"
}
}
}For clients without sign-in support, create an API key under Settings → API Keys and send it as a header instead:
{
"mcpServers": {
"uptimy": {
"url": "https://mcp.upti.my/mcp",
"headers": { "Authorization": "Bearer upt_..." }
}
}
}Signing in and access
When you connect, your assistant opens an Uptimy page that names the app asking for access and the address it will send you back to. Sign in (or create an account), choose the workspace the assistant may see, and approve. You're sent back to the assistant and it's ready.
- Each connection is to one workspace. To use another, connect again and pick it.
- Approving creates an API key named after the app, like
Claude (MCP), with full access to that workspace for 90 days. After that, the assistant asks you to sign in again. - You can see and revoke these keys under Settings → API Keys. A revoked key stops working within a few minutes.
- Approving needs permission to create API keys in the workspace.
Tools
The server offers ten tools: five that read and five that change things in your workspace.
| Tool | Kind | What it does |
|---|---|---|
get_status_overview | Read | Every monitor and heartbeat with its current status, open incidents and status pages, problems first. The assistant starts here. |
get_monitor | Read | One monitor or heartbeat: target, schedule, regions, status, and for heartbeats the last check-in and ping URL. |
get_monitor_metrics | Read | Uptime and latency over a time range (24 hours by default): totals, each region, a time series, and the most recent failed checks with their errors. |
list_incidents | Read | Recent incidents, newest first, filtered by open or resolved and by severity. |
get_incident | Read | One incident with its timeline of updates and status changes, and the status pages it's shown on. |
create_incident | Write | Open an incident by hand, optionally shown on status pages (which notifies their subscribers). |
post_incident_update | Write | Add an update to an incident's timeline, public or internal, and move it to a new status, up to Resolved. |
set_monitor_paused | Write | Pause or resume a monitor or heartbeat. |
trigger_check | Write | Run a website or API check right away from all its regions, e.g. to confirm a fix. |
schedule_maintenance | Write | Schedule a maintenance window for some monitors. Their alerts and incidents are held back while it runs, and it can be announced on status pages. |
⚠️ Write tools act on production
Public incident updates reach your status pages and their subscribers, and paused monitors stop alerting. The server asks assistants to confirm with you before posting public updates or pausing monitors, and most clients ask before running a write tool. There are no tools that delete anything.
Request headers, credentials and request bodies in a monitor's configuration are never sent to the assistant.
Things to ask
- "Is anything down right now?"
- "How has the checkout API's latency looked this week, per region?"
- "Why did last night's incident open? Show me the failed checks."
- "Post a public update on the open incident: the fix is deployed and we're monitoring."
- "Schedule maintenance for the API tonight from 22:00 to 23:00 UTC."
- "Pause the nightly backup heartbeat while I migrate the server."