betterstack

Read monitors, incidents, heartbeats, on-call and status pages; acknowledge or resolve incidents.

我该使用它吗

质量与安全性

A
描述质量
100%
模式完整度
94%
命名质量
96%
投毒风险
80%
权限匹配度
100%
协议合规性
100%

发现(2)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool description contains suspicious base64-like encoded string在 list_monitors 中

基于对工具定义和协议合规性的自动分析。

上下文开销

~1,611token 数(工具定义)
~1.3 KB典型响应大小
对注意力有中等影响(占 128k 上下文窗口的 1.26%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "betterstack": {
      "url": "https://betterstack.usefulapi.io/mcp"
    }
  }
}

远程端点

https://betterstack.usefulapi.io/mcpstreamable-http

它能做什么

工具清单

工具(9)

🟢 只读🟡 写入🔴 删除⚪ 未知
🟢list_monitors(url, pronounceable_name, team_name, page, per_page)

List uptime monitors with their status (up/down/paused/pending/maintenance/validating), check frequency, and alert settings. Good first call to discover what is being monitored. Uptime API: GET /api/v2/monitors.

输入模式

{
  "type": "object",
  "properties": {
    "url": {
      "description": "Filter monitors by their monitored URL.",
      "type": "string"
    },
    "pronounceable_name": {
      "description": "Filter monitors by their pronounceable name.",
      "type": "string"
    },
    "team_name": {
      "description": "Filter by team name (only when using a global API token).",
      "type": "string"
    },
    "page": {
      "description": "Page number for pagination (default 1).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "per_page": {
      "description": "Results per page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 250
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_monitor(monitor_id)

Get a single monitor by id, including current status, last_checked_at, SSL/HTTP settings, regions, and alerting configuration. Uptime API: GET /api/v2/monitors/{id}.

输入模式

{
  "type": "object",
  "properties": {
    "monitor_id": {
      "type": "string",
      "description": "The monitor id (from list_monitors)."
    }
  },
  "required": [
    "monitor_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_incidents(from, to, monitor_id, heartbeat_id, resolved, ...)

List incidents (alerts triggered by monitors/heartbeats), filterable by date range, monitor, and acknowledged/resolved state. Each incident carries cause, started_at, acknowledged_at, resolved_at. Uptime API: GET /api/v3/incidents.

输入模式

{
  "type": "object",
  "properties": {
    "from": {
      "description": "Start date yyyy-mm-dd (inclusive).",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "to": {
      "description": "End date yyyy-mm-dd (inclusive).",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "monitor_id": {
      "description": "Only incidents for this monitor id.",
      "type": "string"
    },
    "heartbeat_id": {
      "description": "Only incidents for this heartbeat id.",
      "type": "string"
    },
    "resolved": {
      "description": "true = only resolved, false = only unresolved.",
      "type": "boolean"
    },
    "acknowledged": {
      "description": "true = only acknowledged, false = only unacknowledged.",
      "type": "boolean"
    },
    "team_name": {
      "description": "Filter by team name (only when using a global API token).",
      "type": "string"
    },
    "page": {
      "description": "Page number for pagination (default 1).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "per_page": {
      "description": "Results per page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 250
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_incident(incident_id)

Get a single incident by id, including cause, status, timeline timestamps (started/acknowledged/resolved), who acknowledged/resolved it, and the related monitor. Uptime API: GET /api/v3/incidents/{id}.

输入模式

{
  "type": "object",
  "properties": {
    "incident_id": {
      "type": "string",
      "description": "The incident id (from list_incidents)."
    }
  },
  "required": [
    "incident_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_heartbeats(team_name, page, per_page)

List heartbeats (cron/background-job monitors that expect a periodic ping), with period, grace, and status (up/down/paused/pending). Uptime API: GET /api/v2/heartbeats.

输入模式

{
  "type": "object",
  "properties": {
    "team_name": {
      "description": "Filter by team name (only when using a global API token).",
      "type": "string"
    },
    "page": {
      "description": "Page number for pagination (default 1).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "per_page": {
      "description": "Results per page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 250
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_on_call(team_name, page, per_page)

List on-call calendars/schedules and the users currently on call for escalation. Useful to see who gets paged. Uptime API: GET /api/v2/on-calls.

输入模式

{
  "type": "object",
  "properties": {
    "team_name": {
      "description": "Filter by team name (only when using a global API token).",
      "type": "string"
    },
    "page": {
      "description": "Page number for pagination (default 1).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "per_page": {
      "description": "Results per page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 250
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_status_pages(team_name, page, per_page)

List public/private status pages with company name, subdomain, aggregate_state, and published flag. Uptime API: GET /api/v2/status-pages.

输入模式

{
  "type": "object",
  "properties": {
    "team_name": {
      "description": "Filter by team name (only when using a global API token).",
      "type": "string"
    },
    "page": {
      "description": "Page number for pagination (default 1).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "per_page": {
      "description": "Results per page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 250
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡acknowledge_incident(incident_id, acknowledged_by)

Acknowledge an ongoing incident, signalling that someone is looking into it (stops further escalation). Idempotent-ish: acknowledging an already-acknowledged incident returns HTTP 409. Uptime API: POST /api/v3/incidents/{id}/acknowledge.

输入模式

{
  "type": "object",
  "properties": {
    "incident_id": {
      "type": "string",
      "description": "The incident id to acknowledge (from list_incidents)."
    },
    "acknowledged_by": {
      "type": "string",
      "description": "User e-mail or a custom identifier of who is acknowledging the incident."
    }
  },
  "required": [
    "incident_id",
    "acknowledged_by"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡resolve_incident(incident_id, resolved_by)

Resolve an ongoing incident, marking it as handled/closed. Idempotent-ish: resolving an already-resolved incident returns HTTP 409. Uptime API: POST /api/v3/incidents/{id}/resolve.

输入模式

{
  "type": "object",
  "properties": {
    "incident_id": {
      "type": "string",
      "description": "The incident id to resolve (from list_incidents)."
    },
    "resolved_by": {
      "type": "string",
      "description": "User e-mail or a custom identifier of who is resolving the incident."
    }
  },
  "required": [
    "incident_id",
    "resolved_by"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

推荐提示词

retrieve_data
Get details about [item] from betterstack
预期工具: get_monitor
fetch_info
Fetch [information type] using betterstack
预期工具: get_monitor
list_items
List all [items] available in betterstack
预期工具: list_monitors
browse_collection
Show me the [collection] from betterstack
预期工具: list_monitors
explore_workflow
List available [items], then get details for each one using betterstack
预期工具: list_monitorsget_monitor

社区

评价此服务器

证据

最近观测

已验证未记录版本9 个工具