/ mcp
MCP server for uptime monitoring: Claude, Codex and any MCP client
Fettle's MCP server gives an AI agent the uptime monitoring you have in the dashboard. Ask Claude or Codex to add a monitor, find what is down, or post a status update, and it calls Fettle for you. It is on every plan, including free, in two channels: a hosted endpoint and the fettle-mcp npm package.
What you can ask
- “Add HTTP monitors for these five URLs and tag them env:prod.”
- “What is down right now, and why?”
- “Add a heartbeat for the nightly backup job.”
- “Silence alerts for the API monitors during tonight's deploy.”
- “Post an update to our status page: the fix is deployed.”
Maintenance windows start on Pro. Everything else works on every plan, within its limits.
The tools
49 tools, 28 of them write tools. They cover the same ground as the REST API, because they call it.
Monitors
- list_monitors
- get_monitor
- create_monitor
- bulk_create_monitors
- bulk_pause_monitors
- bulk_resume_monitors
- bulk_update_monitors
- get_exposed_ports_preset
- update_monitor
- pause_monitor
- resume_monitor
- delete_monitor
- check_now
- check_target
Status pages
- list_status_pages
- get_status_page
- list_status_page_incidents
- create_status_page_incident
- post_status_page_update
- update_status_page_incident
- delete_status_page_incident
Incidents
- list_incidents
- acknowledge_incident
- get_incident
Heartbeats
- list_heartbeats
- create_heartbeat
- get_heartbeat
- update_heartbeat
- pause_heartbeat
- resume_heartbeat
- delete_heartbeat
Maintenance windows
- list_maintenance_windows
- list_active_maintenance
- get_maintenance_window
- create_maintenance_window
- update_maintenance_window
- delete_maintenance_window
- preview_maintenance_window
Tags
- list_tags
- bulk_update_monitor_tags
- rename_tag
- delete_tag
Results and uptime
- get_uptime_summary
- list_check_results
- get_response_time_by_region
- get_uptime_daily
Plan, channels and regions
- get_plan_usage
- list_channels
- list_regions
What each tool does, and the scope it needs, is in the MCP docs.
Two channels, same tools
- Remote:
https://api.fettle.sh/mcp. Nothing to install. - Local:
npx -y fettle-mcp, over stdio. Needs Node.js 20 or newer.
The remote endpoint needs nothing installed and always offers the current tools. The fettle-mcp package runs locally over stdio, for clients that do not speak remote MCP. Both authenticate with the same API key and expose the same tools. Neither supports OAuth yet.
Both are one entry in the official MCP registry: sh.fettle/mcp.
Set it up
Create an API key in the dashboard, then add Fettle to your client. Claude Code:
claude mcp add fettle --transport http https://api.fettle.sh/mcp \
--header "Authorization: Bearer fettle_your_key_here"Codex reads the key from the FETTLE_API_KEY environment variable:
[mcp_servers.fettle]
url = "https://api.fettle.sh/mcp"
bearer_token_env_var = "FETTLE_API_KEY"Cursor, Windsurf and other clients that take a URL in a JSON config can point at the hosted endpoint. The config file differs by client, the two fields do not:
{
"mcpServers": {
"fettle": {
"url": "https://api.fettle.sh/mcp",
"headers": { "Authorization": "Bearer fettle_your_key_here" }
}
}
}Claude Desktop, and any client without remote support, runs the local package:
{
"mcpServers": {
"fettle": {
"command": "npx",
"args": ["-y", "fettle-mcp"],
"env": { "FETTLE_API_KEY": "fettle_your_key_here" }
}
}
}The MCP setup guide has the local variants for each client and a troubleshooting list. Keys, scopes and rate limits are in the API keys guide.
Questions
- Which MCP clients work with Fettle?
- Claude Code, Claude Desktop and Codex, and any MCP client: Cursor and Windsurf among them. Claude Code, Codex, Cursor and Windsurf can use the hosted endpoint or the npm package. Claude Desktop's config file runs the npm package over stdio.
- Does the MCP server cost extra?
- No. It is on every plan, including free. A tool call is an API call: it spends one unit of your organization's per-minute request budget, the same one your scripts use.
- Should I use the remote endpoint or the npm package?
- The remote endpoint needs nothing installed and always offers the current tools. The fettle-mcp package runs locally over stdio, for clients that do not speak remote MCP. Both authenticate with the same API key and expose the same tools. Neither supports OAuth yet.
- Can an agent change things I did not ask for?
- It can do only what its API key allows. Give it a read-scoped key and it can look at monitors and incidents but change nothing. Write tools need a write-scoped key.
Plans and limits are on the pricing page.