Cronalert

io.github.jaredhobbs由 GitHub 帳號 jaredhobbs 發布v1.5.1更新於 Oct 24, 2026

Manage CronAlert uptime monitors, check results, and incidents from any MCP client.

概覽

AI 產生的概覽

CronAlert MCP 伺服器讓助理列出、建立、更新與刪除可用性監控,並檢視檢查結果與故障事件。

可以做什麼
  • 列出、檢視、建立、更新、暫停與刪除 HTTP、心跳與 TCP 連接埠監控
  • 檢視含可用率百分比與回應時間的檢查歷史
  • 列出所有監控或單一監控的進行中故障,並讀取故障更新
  • 在故障上發布狀態更新,並列出公開狀態頁
  • 從其他可用性監控服務或 JSON、CSV 匯入監控
適用情境
適合已在 CronAlert 上做可用性監控、想讓助理直接建立監控、檢查是否有服務中斷、排查故障,或在維護期間暫停某個監控而不必開啟主控台的情況。
執行需求
本機 npm 套件需要 Node.js 18+,也可直接連線到採用 Streamable HTTP 的遠端端點。需要 CronAlert 帳號(免費方案即可)以及 Settings 中建立的 API 金鑰,透過 CRONALERT_API_KEY 環境變數提供;遠端伺服器則使用 Authorization 標頭中的 Bearer 權杖。
安裝前請注意
API 金鑰會隨每次請求傳送,且僅限單一團隊的資源。寫入類工具可建立、更新、暫停、刪除與匯入監控,並發布故障更新;唯讀金鑰在寫入端點會被拒絕,讀寫金鑰可啟用刪除確認權杖。監控名稱、URL 與檢查間隔會傳送到 CronAlert 的伺服器。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Cronalert,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

cronalert-mcp

MCP server for CronAlert uptime monitoring. Manage your monitors, check results, and incidents from Claude, Cursor, Windsurf, or any MCP-compatible AI client.

Quick Start

1. Get your API key

Sign up at cronalert.com and create an API key in Settings > API Keys.

When creating the key, choose a scope:

  • Read-only — the agent can list and read monitors, check results, and incidents but cannot create, update, or delete anything. Recommended for most agent setups.
  • Read & write — full access, including destructive tools. Optionally enable "require confirmation" so deletes need a server-issued confirmation token (see Security & permissions).

2. Add to your MCP client

Claude Desktop — edit ~/Library/Application Support/Claude/claude_desktop_config.json:

json
{  "mcpServers": {    "cronalert": {      "command": "npx",      "args": ["-y", "cronalert-mcp"],      "env": {        "CRONALERT_API_KEY": "ca_your_api_key_here"      }    }  }}

Claude Code — run:

bash
claude mcp add cronalert -e CRONALERT_API_KEY=ca_your_key -- npx -y cronalert-mcp

Cursor — add to .cursor/mcp.json:

json
{  "mcpServers": {    "cronalert": {      "command": "npx",      "args": ["-y", "cronalert-mcp"],      "env": {        "CRONALERT_API_KEY": "ca_your_api_key_here"      }    }  }}

Remote server (no install needed) — connect any MCP client to:

https://cronalert.com/mcp

Authenticate with Authorization: Bearer ca_your_key header. Supports Streamable HTTP transport.

3. Start using it

Ask your AI assistant to manage your monitors (see examples below).

4. Optional: add the Agent Skill

The server gives your agent the tools; the cronalert-uptime-monitoring skill tells it when and how to use them (monitor-type selection, heartbeat grace periods, outage triage, confirm-before-delete). Copy the folder into .claude/skills/ (Claude Code) or ~/.codex/skills/ (Codex), or install it from Agensi.

Available Tools

ToolDescriptionType
list_monitorsList all monitors with status and response timesRead
create_monitorCreate an HTTP, heartbeat, or TCP port monitor (heartbeats take an expected interval and grace period)Write
get_monitorGet details for a specific monitorRead
update_monitorUpdate settings, heartbeat interval/grace, pause/resumeWrite
delete_monitorPermanently delete a monitorWrite
get_check_resultsCheck history with uptime % and response timesRead
get_monitor_incidentsIncidents for a specific monitorRead
list_incidentsAll active incidents across monitorsRead
list_status_pagesYour public status pagesRead
add_incident_updatePost a status update on an active incidentWrite
get_incident_updatesStatus updates for an incidentRead
import_monitorsImport monitors from UptimeRobot, Pingdom, Better Stack, StatusCake, Checkly, Oh Dear, Cronitor, Healthchecks.io, Dead Man's Snitch, Datadog, CronAlert JSON, or CSVWrite

Security & permissions

Approvals in MCP clients are client-side: write tools carry destructiveHint: true, so Claude Code / Desktop / Cursor prompt before running them. CronAlert adds two server-side boundaries so the client prompt isn't the only gate:

  • Read-only API keys. A read-only key is rejected on every write endpoint (create/update/delete/import) with a 403 — enforced by the server, regardless of the client. Hand agents a read-only key and destructive tools simply cannot succeed. This is the strongest boundary and the recommended default.
  • Confirmation tokens for deletes. If a read-write key has "require confirmation" enabled, delete_monitor first returns a preview plus a short-lived, resource-bound confirmToken instead of deleting. The agent must call delete_monitor again with that token in the confirm argument. This prevents a single stray or prompt-injected call from destroying data and gives the server an auditable, explicit second step.

The API key is scoped to a single team, so the blast radius of any key is that team's resources.

Examples

Example 1: Create a monitor and check its status

User prompt: "Create a monitor for https://api.example.com/health that checks every minute, then show me its details."

What happens:

  1. The AI calls create_monitor with name: "API Health", url: "https://api.example.com/health", checkInterval: 60
  2. CronAlert creates the monitor and returns its ID
  3. The AI calls get_monitor with the new ID to show the details

Expected output:

json
{  "id": "abc123",  "name": "API Health",  "url": "https://api.example.com/health",  "method": "GET",  "checkInterval": 60,  "lastStatus": "unknown",  "createdAt": "2026-03-08T12:00:00Z"}

Example 2: Check uptime and respond to incidents

User prompt: "Are any of my monitors down? If so, show me the error details."

What happens:

  1. The AI calls list_incidents to check for active incidents
  2. If incidents exist, it calls get_monitor for each affected monitor
  3. It calls get_check_results to get the recent error details

Expected output (no incidents):

json
{  "data": [],  "message": "No active incidents"}

Expected output (with incident):

json
{  "data": [    {      "id": "inc_xyz",      "monitorId": "abc123",      "cause": "Expected status 200, got 503",      "startedAt": "2026-03-08T11:45:00Z"    }  ]}

Example 3: List monitors and pause one for maintenance

User prompt: "List all my monitors, then pause the staging one."

What happens:

  1. The AI calls list_monitors to get all monitors
  2. It identifies the staging monitor by name
  3. It calls update_monitor with id: "staging_id" and paused: true

Expected output:

json
{  "id": "staging_id",  "name": "Staging Server",  "isPaused": true,  "lastStatus": "up"}

Example 4: Heartbeat for a nightly backup (v1.5.0+)

User prompt: "Create a heartbeat monitor called Nightly DB backup that expects a ping every 24 hours with a 2-hour grace period, and give me the URL to add to the cron job."

What happens:

  1. The AI calls create_monitor with type: "heartbeat", name: "Nightly DB backup", checkInterval: 86400, gracePeriod: 7200
  2. CronAlert returns the monitor including its unique ping url
  3. The AI shows the URL to append to the job, e.g. pg_dump ... && curl -fsS <url>

checkInterval is the expected seconds between pings (plan minimum, 60 on Pro+, up to 604800). gracePeriod is optional; it defaults to the interval capped at one hour. For http and tcp monitors checkInterval is ignored and set from your plan.

Requirements

Privacy Policy

This MCP server connects to the CronAlert API (cronalert.com/api/v1/) using your API key. It transmits:

  • Monitor configuration (names, URLs, check intervals) when creating or updating monitors
  • API key for authentication on every request

Data is processed by CronAlert's servers on Cloudflare's infrastructure. No data is stored locally by the MCP server itself. See our full Privacy Policy for details on data collection, retention, and your rights.

Support

License

MIT

來源:README.md,提交 ab9fead

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

2
  1. v1.5.1最新Sep 26, 2026
  2. v1.0.6Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分