Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Monitor websites, APIs, and servers: create monitors, triage incidents, and query uptime stats.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Works in Claude on the web, desktop and mobile:
https://mcp.uptimerobot.com/mcpRun this in your terminal
claude mcp add --transport http uptimerobot https://mcp.uptimerobot.com/mcpPaste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"uptimerobot": {
"url": "https://mcp.uptimerobot.com/mcp"
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"uptimerobot": {
"type": "http",
"url": "https://mcp.uptimerobot.com/mcp"
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
ChatGPT connects only to servers on the internet:
https://mcp.uptimerobot.com/mcpMenu names can differ slightly by plan and over time.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
We have not read this server’s tool list yet; we check endpoints in rotation.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified against the domain uptimerobot.com (the registry checks domain ownership)
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Not checked yet; we check endpoints in rotation
Not checked yet; we check endpoints in rotation
Not checked yet; we read the tool list when we check the endpoint
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs in the maker’s cloud. Connect over the internet with nothing to install, but what you send passes through the maker’s servers.
The GitHub repo last changed –, and the latest version (0.1.0) reached the registry 3 months ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.
In the same category: Spec Driven Development, Remote Desktop Commander, debuff
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Let coding agents play, test and tune your 2D web game: live state, explained errors, replays, fuzz.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
This repo is UptimeRobot's single source of truth for AI agent integrations. It publishes:
.mdc). Claude Code gets the same rules from the conventions skill.The mcp.json and .mcp.json files both connect directly to the hosted server at https://mcp.uptimerobot.com/mcp over streamable HTTP. Nothing runs locally: the client discovers the server's OAuth endpoints and runs the browser login itself. Two filenames exist only because Cursor expects the dot-less name and Claude Code and Codex the dot-prefixed one.
The same content is mirrored under uptimerobot.com/ for crawler discovery (uptimerobot.com/llms.txt, uptimerobot.com/AGENTS.md, etc.).
UptimeRobot is being submitted to Anthropic's community plugin marketplace. Once accepted, add that marketplace once and install:
/plugin marketplace add anthropics/claude-plugins-community
/plugin install uptimerobot@claude-community
Or run /plugin, open the Discover tab, find UptimeRobot, and install it. (The community marketplace must be added first — it isn't built in. Only Anthropic's curated official marketplace shows up in /plugin with no setup.)
The MCP server auto-registers via .mcp.json as soon as the plugin loads. The first time it connects, a browser opens for you to log into UptimeRobot and authorize access (OAuth) — there's no API key to paste. Tokens are cached locally, so you only do this once.
To run the full plugin (skills and the auto-registered MCP server) straight from a local checkout — no marketplace required — clone the repo and load it with the --plugin-dir flag:
git clone https://github.com/uptimerobot/ai.git
claude --plugin-dir ./ai
--plugin-dir loads the plugin from a directory (the one containing .claude-plugin/plugin.json) for that session only. The flag is repeatable and also accepts a .zip. Use an absolute path if you launch Claude Code from elsewhere:
claude --plugin-dir /absolute/path/to/ai
On first connection a browser opens for the OAuth flow. Run /plugin to confirm the plugin is loaded and uptimerobot MCP Server shows ✓ connected.
If you just want the MCP tools without the rest of the plugin (dotfiles, CI bootstrap), register the server yourself:
claude mcp add --transport http uptimerobot https://mcp.uptimerobot.com/mcp
Then run /mcp, select uptimerobot, and choose Authenticate to complete the OAuth browser flow. Run /mcp (or claude mcp list in a terminal) to confirm uptimerobot shows ✓ connected.
Browse the Cursor Marketplace, find UptimeRobot, and click Add to Cursor. Authorize through the OAuth browser flow when the MCP server first connects — no API key needed.
Follow Cursor's plugin docs:
# Clone or symlink this repo into Cursor's local plugin folder
git clone https://github.com/uptimerobot/ai.git ~/.cursor/plugins/local/uptimerobot-ai
Launch Cursor and run Developer: Reload Window from the command palette.
Verify the plugin is discovered:
uptimerobot.mdc rule and every skills/*/SKILL.md entry should be listed.uptimerobot should appear with up to 60 tools (fewer for read-only or team sessions) once the MCP server connects. Complete the OAuth browser flow on first connection.Clone the repo and open it in Codex. The repo-scoped marketplace at .agents/plugins/marketplace.json is auto-discovered, so UptimeRobot (local) will appear in the Codex plugin directory without any extra setup. Install the plugin, then complete the OAuth browser flow on first MCP connection.
If you want Codex to track the source explicitly:
codex plugin marketplace add ./
Verify the plugin is loaded: the UptimeRobot skills should be available and the uptimerobot MCP server should appear with up to 60 tools (fewer for read-only or team sessions) once connected.
The server is listed in the official MCP Registry as com.uptimerobot/uptimerobot, so any registry-aware client can discover and install it without a per-client plugin submission. Metadata lives in server.json:
curl -s "https://registry.modelcontextprotocol.io/v0.1/servers?search=com.uptimerobot/uptimerobot"
Clients without registry support can connect to the same URL directly (OAuth on first use):
{
"mcpServers": { "uptimerobot": { "type": "http", "url": "https://mcp.uptimerobot.com/mcp" } } }
Where the OAuth browser flow can't run, add the server to your own client config with an API key from the dashboard (Integrations & API) instead — a Read-only key unless the job needs to write. Keep the key in an environment variable, not in the file, and never commit it. This is a manual setup — the plugin itself never reads or sends an API key:
{
"mcpServers": { "uptimerobot": { "type": "http", "url": "https://mcp.uptimerobot.com/mcp", "headers": { "Authorization": "Bearer ${UPTIMEROBOT_API_KEY}" } } } }
Claude Code expands ${UPTIMEROBOT_API_KEY} from the environment; other clients have their own syntax (Cursor: ${env:UPTIMEROBOT_API_KEY}).
60 tools via MCP, grouped by resource — full list in AGENTS.md; each tool's own schema and description are the reference for its parameters:
| Tool | Purpose |
|---|---|
create-monitor | Create HTTP, KEYWORD, PING, PORT, HEARTBEAT, DNS, API, or UDP monitors |
update-monitor | Change name, URL, interval, alert contacts, tags, HTTP settings (list and map fields replace the whole value — see AGENTS.md) |
update-monitor-status | Pause or resume a monitor |
list-monitors | Paginated list filtered by name, URL, tags, group, custom field, or state |
get-monitor-details | Full config + current state for one monitor |
get-monitor-stats | Aggregated up/down/paused counts + uptime (a 0–1 fraction) |
get-response-times | Time-series response-time data with buckets |
delete-monitor | Permanently delete a monitor and its history |
monitor-groups)| Tool | Purpose |
|---|---|
create-monitor-group | Create a group and assign monitors to it |
update-monitor-group | Rename an existing group |
delete-monitor-group | Delete a group; its monitors move to another group or none |
get-monitor-group | Fetch a single group by ID |
list-monitor-groups | Paginated list of groups |
| Tool | Purpose |
|---|---|
create-psp | Create a status page from monitors, groups, or tags (always created public; pause with update-psp) |
update-psp | Change name, domain, sort order, visibility, publish status, or monitors (monitor lists replace the whole list) |
get-psp | Fetch a single status page by ID |
list-psps | Paginated list of status pages |
delete-psp | Permanently delete a status page |
psp-subscribers)| Tool | Purpose |
|---|---|
create-psp-announcement | Post an announcement (info/maintenance/issue) to a status page |
update-psp-announcement | Edit title, content, dates, type, or publish status |
pin-psp-announcement | Pin an announcement to the top of the page |
unpin-psp-announcement | Unpin an announcement |
get-psp-announcement | Fetch a single announcement by ID |
list-psp-announcements | Paginated list of announcements for a status page |
delete-psp-announcement | Permanently delete an announcement |
maintenance-window)| Tool | Purpose |
|---|---|
create-maintenance-window | Schedule a one-off or recurring window that suppresses alerts |
update-maintenance-window | Change schedule, duration, monitors, or pause/resume the window |
get-maintenance-window | Fetch a single window by ID |
list-maintenance-windows | Paginated list of windows |
delete-maintenance-window | Permanently delete a window |
| Tool | Purpose |
|---|---|
list-incidents | Incidents across monitors, with time range, monitor, or open-only filter |
get-incident-details | Per-incident request logs and cause |
get-incident-activity-log | Incident timeline summary plus paginated entries |
get-incident-alerts | Alerts sent during an incident, with delivery summary |
incident-comments)| Tool | Purpose
Only the beginning is shown; read the rest in the repo