Guide
Connect your AI assistant to your boards, and ask it what is down, why, and to set up monitors and post incidents for you.
The UptimeSam MCP server lets an AI assistant such as Claude, ChatGPT, Cursor or VS Code work as you on the boards you are an admin of. It can check what is up and down, read uptime and recent outages, add, change, pause and resume monitors, and post incidents and updates on your status page. It is for board admins, on boards on the Max plan.
This is the server URL. Every client below needs it:
https://uptimesam.com/mcp
Most clients sign in to UptimeSam for you: you add the server URL, a browser window asks you to sign in and approve, and that is all. Menu names in these apps change from time to time, so if a label below does not match exactly, look for the nearest one.
On Team and Enterprise plans, an owner adds the connector first under Admin settings > Connectors, then each member clicks Connect. Remote servers like this one are added as a connector, not in claude_desktop_config.json.
Add the server from your terminal:
claude mcp add --transport http uptimesam https://uptimesam.com/mcp
Then run /mcp inside Claude Code and choose to authenticate. A browser opens for you to sign in to UptimeSam and approve.
Add this to ~/.cursor/mcp.json, or to .cursor/mcp.json in a project. Cursor then offers to sign in.
~/.cursor/mcp.json
{
"mcpServers": {
"uptimesam": {
"url": "https://uptimesam.com/mcp"
}
}
}
If Cursor's built-in browser does not load the sign-in page, copy the link into your normal browser.
Open the Command Palette, run MCP: Add Server, choose HTTP, paste the server URL and approve the sign-in. Or add it to .vscode/mcp.json:
.vscode/mcp.json
{
"servers": {
"uptimesam": {
"type": "http",
"url": "https://uptimesam.com/mcp"
}
}
}
A client that supports OAuth for remote MCP servers needs only the server URL. For one that cannot sign in and only takes a header, generate a personal token in Settings > MCP server and send it as Authorization: Bearer followed by the token. A token lasts 90 days and only works with the MCP server.
{
"mcpServers": {
"uptimesam": {
"headers": {
"Authorization": "Bearer YOUR_TOKEN"
},
"url": "https://uptimesam.com/mcp"
}
}
}
These are the tools the server gives your assistant, as it describes them. Reads only look; changes write to the board.
list_boards
Reads
Lists the boards this account is an admin of, with each board's slug, its status page address and how many monitors are up and down. Call this first: the other tools take a board slug.
get_board_status
Reads
What the board's status page shows right now: the headline (operational, degraded, outage or maintenance) and each public monitor with its status, uptime and last 30 days.
list_monitors
Reads
Lists a board's monitors with their type, target, status, last check, response time and last error. Narrow it by status.
get_monitor
Reads
Gets one monitor in full: its settings, its uptime over 24 hours, 7, 30 and 90 days, and its most recent outages with their causes.
create_monitor
Changes
Adds a monitor to a board. Its first check runs within seconds. Types: http (status code), keyword (text in the page), ssl (certificate expiry), heartbeat (a cron job pings its heartbeat_url), tcp, dns, ping, postgres, mysql, redis and smtp. The plan's monitor count and shortest interval apply.
update_monitor
Changes
Changes the fields you send and leaves the rest. The type cannot change. A change to what is checked, or how often, checks again straight away.
pause_monitor
Changes
Stops checking a monitor, for example during planned work. A paused monitor sends no alerts and the paused time is not downtime.
resume_monitor
Changes
Starts checking a paused monitor again.
list_incidents
Reads
Lists a board's status page incidents, open ones first, with their updates.
create_incident
Changes
Posts an incident on the board's status page, with its first update. By default the board's alert channels and email subscribers are told; set notify to false to post quietly.
add_incident_update
Changes
Posts an update to an incident; its status becomes the incident's, and resolved closes it. By default the board's alert channels and email subscribers are told.
Things you can ask, and the tools the assistant uses for them:
"Is anything down right now, and since when?"
list_boards
list_monitors
"Why was the API down last night, and what is its uptime this month?"
list_monitors
get_monitor
"Add monitors for api.acme.com/health every minute and our Postgres at db.acme.com."
list_boards
create_monitor
"Pause the checkout monitor while we deploy, then resume it."
list_monitors
pause_monitor
resume_monitor
"Post an incident that logins are slow, affecting the API, and mark it resolved when I say so."
list_monitors
create_incident
add_incident_update
"Alert me when any monitor takes over 2 seconds to answer."
list_monitors
update_monitor
Settings > MCP server lists everything connected to your account under Connected, with when each was last used. Revoke disconnects one straight away; the others keep working.
A client that signed in gets an access token that lasts 60 minutes and is refreshed for you. The refresh lasts 30 days, so a client you have not used for that long asks you to sign in again.
A personal token lasts 90 days. It is shown once, when you generate it, so copy it then; after that, generate a new one.