Better Stack MCP by usefulapi

io.usefulapiPublished by usefulapi.ioOfficial publisherv1.37.4Updated Nov 7, 2026

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

The publisher's own server: Ably MCP by usefulapi

VerifiedStreamable HTTPWeb executableCloud & InfrastructureSecurity & Monitoring

Overview

AI-generated overview

Hosted MCP server for Better Stack Uptime: lets an assistant read monitors, incidents, heartbeats, on-call schedules and status pages, and acknowledge or…

What you can do
  • List and inspect uptime monitors with status, check frequency, regions and alert settings
  • List and inspect incidents with cause, timeline timestamps and who acknowledged or resolved them
  • List heartbeats for cron/background jobs, with period, grace and status
  • List on-call schedules and who is currently on call, plus status pages with aggregate state
  • Acknowledge or resolve ongoing incidents
  • Check monthly tool-call usage, request a missing feature, or manage the Pro subscription
When to use it
Useful when you want to ask an assistant about current outages, recent incident history or who is on call, and to acknowledge or resolve incidents from the chat instead of opening the Better Stack dashboard.
Requirements
A remote endpoint reached over streamable HTTP; no local install. Sign-in is via OAuth, and on first connect you paste a Better Stack API token (Better Stack → Settings → API tokens), which is stored per user. No API key or Authorization header goes in the client config. A paid plan is needed beyond the free monthly call allowance.
Before you install
The server asks for your Better Stack API token during OAuth login; it is stored by the third-party host. Acknowledge and resolve tools change incident state and stop or close escalation, so confirm before running them. Usage is metered: the free plan allows 50 tool calls a month, and upgrade tools return Stripe Checkout payment links for Pro ($9/month) or Pro+ ($39/month); cancellation runs to the end of the paid period with no refund for the current period.

Installation

In SourceWeft

  1. Open Better Stack MCP by usefulapi in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.usefulapi%2Fbetterstack/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "better-stack-by-usefulapi": {
      "type": "http",
      "url": "https://betterstack.usefulapi.io/mcp"
    }
  }
}

README

Better Stack MCP by usefulapi

Manage Better Stack Uptime from Claude, Cursor, or any MCP client — read monitors, incidents, heartbeats, on-call schedules and status pages, and acknowledge/resolve incidents. Hosted, no local install: connect with your Better Stack API token.

Live endpoint: https://betterstack.usefulapi.io/mcp · Homepage: https://usefulapi.io

Connect

  • Claude (claude.ai, Desktop): open Customize → Connectors, click + Add → Add custom connector, and paste https://betterstack.usefulapi.io/mcp.
  • Claude Code: claude mcp add --transport http betterstack https://betterstack.usefulapi.io/mcp, then run /mcp to log in.
  • VS Code: Add to VS Code.
  • Cursor and other clients: add the URL as a remote MCP server:
json
{  "mcpServers": {    "betterstack": {      "url": "https://betterstack.usefulapi.io/mcp"    }  }}

Add only the URL. Do not add an Authorization header or an API key to the client config: the server signs you in with OAuth, and the login page asks for your Better Stack credentials.

Step-by-step setup, where to find your credentials, and FAQ: https://usefulapi.io/betterstack/

On first connect you'll paste your Better Stack API token (Better Stack → Settings → API tokens). It's validated, stored per-user, and scoped to you — no keys in config files.

Tools

ToolTypeWhat it does
betterstack_list_monitorsreadList monitors
betterstack_get_monitorreadGet a monitor
betterstack_list_incidentsreadList incidents
betterstack_get_incidentreadGet an incident
betterstack_list_heartbeatsreadList heartbeats
betterstack_list_on_callreadList on-call schedules
betterstack_list_status_pagesreadList status pages
betterstack_acknowledge_incidentwriteAcknowledge an incident
betterstack_resolve_incidentwriteResolve an incident
betterstack_usage_statusmetaUsage status (free-tier meter)
betterstack_request_featuremetaRequest a missing feature
betterstack_upgrademetaUpgrade to Pro or Pro+
betterstack_cancel_subscriptionmetaCancel the Pro subscription

read tools are read-only; write tools mutate data (clients should confirm them); meta tools report usage, manage your subscription or send a feature request.

Pricing

PlanPriceLimit
Free$050 tool calls / month
Pro$9/mo or $90/yr (2 months free)Unlimited*

*Pro has a fair use limit of 10,000 tool calls a month on this server. For more, write to [email protected].

Pro covers this server only. Subscribe with betterstack_upgrade (it returns a Stripe Checkout link). Cancel any time with betterstack_cancel_subscription: Pro continues to the end of the paid period, with no refund for the current period, and running betterstack_upgrade before then undoes the cancel. Or write to [email protected].

License

MIT — see LICENSE. Documentation only; the server is hosted.

Source: servers/betterstack/README.md at commit 4046075

Tools

9

betterstack_list_monitors

List monitors

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.

Parametersurlpageper_pageteam_namepronounceable_name

betterstack_get_monitor

Get a monitor

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}.

Parametersmonitor_idrequired

betterstack_list_incidents

List incidents

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.

Parameterstofrompageper_pageresolvedteam_namemonitor_idacknowledgedheartbeat_id

betterstack_get_incident

Get an incident

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}.

Parametersincident_idrequired

betterstack_list_heartbeats

List heartbeats

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.

Parameterspageper_pageteam_name

betterstack_list_on_call

List on-call schedules

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.

Parameterspageper_pageteam_name

betterstack_list_status_pages

List status pages

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

Parameterspageper_pageteam_name

betterstack_acknowledge_incident

Acknowledge an incident

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.

Parametersincident_idrequiredacknowledged_byrequired

betterstack_resolve_incident

Resolve an incident

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.

Parametersincident_idrequiredresolved_byrequired

Version history

21
  1. v1.37.4LatestNov 7, 2026
  2. v1.36.3Nov 5, 2026
  3. v1.36.2Nov 5, 2026
  4. v1.36.1Nov 4, 2026
  5. v1.36.0Nov 3, 2026
  6. v1.35.1Nov 3, 2026
  7. v1.34.0Nov 1, 2026
  8. v1.32.1Oct 31, 2026
  9. v1.31.0Oct 31, 2026
  10. v1.30.2Oct 30, 2026
  11. v1.30.0Oct 30, 2026
  12. v1.25.0Oct 26, 2026
  13. v1.22.3Oct 25, 2026
  14. v1.22.0Oct 25, 2026
  15. v1.21.0Oct 24, 2026
  16. v1.18.0Oct 23, 2026
  17. v1.16.4Oct 22, 2026
  18. v1.16.3Oct 21, 2026
  19. v1.11.1Oct 9, 2026
  20. v1.10.0Oct 9, 2026
  21. v1.0.1Sep 16, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Usefulapi integrations