# Better Stack — how to use (mcp.ai)

Connect your Better Stack account and use 117 tools for server monitoring straight from your AI agent. Connect with your own API key. Better Stack provides monitoring, logging, and incident management solutions to help teams ensure the reliability and performance of their applications.

## Option A — via MCP (recommended)
Remote MCP endpoint (HTTP, streamable): `https://api.mcp.ai/p_better_stack?ms=1787293680000`
Add it as a custom/remote MCP connector in your client (Claude, Cursor, VS Code…), then authenticate when prompted. Once connected, ask the agent to use the server's tools (e.g. `better_stack_acknowledge_incident`).

## Option B — via direct REST API
Base URL: `https://api.mcp.ai/api/better_stack`
Auth: `Authorization: Bearer sk_live_…` — create a workspace API key at https://mcp.ai/settings/api-keys
Discover endpoints: `GET https://api.mcp.ai/api/better_stack/_endpoints`

### Endpoints
- `POST https://api.mcp.ai/api/better_stack/acknowledge/incident` — Tool to acknowledge an ongoing incident. Use when you need to mark an incident as being worked on, which prevents further escalations. Acknowledging an incident signals that someone is actively addres
  - body: { incident_id: string, acknowledged_by?: string }
- `POST https://api.mcp.ai/api/better_stack/create/escalation/policy` — Creates a new escalation policy for incident management. Escalation policies define who gets notified and in what order when incidents occur. Supports multiple step types: 'escalation' (notify members
  - body: { name: string, steps: object[], team_name?: string, repeat_count?: integer, repeat_delay?: integer }
- `POST https://api.mcp.ai/api/better_stack/create/heartbeat` — Tool to create a new heartbeat monitor for cron jobs and scheduled tasks. Use when you need to set up monitoring for a service that should send regular heartbeat signals.
  - body: { sms?: boolean, call?: boolean, name?: string, push?: boolean, email?: boolean, grace?: integer, paused?: boolean, period?: integer, team_name?: string, heartbeat_group_id?: integer }
- `POST https://api.mcp.ai/api/better_stack/create/heartbeat/group` — Tool to create a new heartbeat group. Use when you need to organize related heartbeat checks under a single, logical group. Example prompt: "Create a new heartbeat group named 'Backend services'."
  - body: { name: string, paused?: boolean, team_name?: string, sort_index?: integer }
- `POST https://api.mcp.ai/api/better_stack/create/incident` — Tool to create a new incident and alert the on-call person. Use when you need to manually report an incident or trigger escalation workflows. The incident will be routed according to the specified esc
  - body: { sms?: boolean, call?: boolean, name?: string, email?: boolean, summary?: string, metadata?: object, policy_id?: string, team_name?: string, team_wait?: integer, description?: string, critical_alert?: boolean, requester_email?: string }
- `POST https://api.mcp.ai/api/better_stack/create/incident/comment` — Tool to create a new comment on an incident. Use when you need to add documentation, updates, or notes to an existing incident in Better Stack.
  - body: { content: string, incident_id: string }
- `POST https://api.mcp.ai/api/better_stack/create/metadata` — Tool to create or update a metadata record for a resource. Metadata provides key-value associations for resources like monitors, heartbeats, or incidents. Use when you need to tag or annotate resource
  - body: { key: string, values: object[], owner_id: string, owner_type: string }
- `POST https://api.mcp.ai/api/better_stack/create/monitor` — Tool to create a new uptime monitor for a URL or service. Use when you need to set up monitoring for websites, APIs, servers, or network services. Supports multiple monitor types including HTTP/HTTPS 
  - body: { sms?: boolean, url: string, call?: boolean, port?: string, push?: boolean, email?: boolean, paused?: boolean, regions?: string[], policy_id?: string, team_name?: string, team_wait?: integer, verify_ssl?: boolean, http_method?: string, monitor_type: string, request_body?: string, auth_password?: string, auth_username?: string, scenario_name?: string, critical_alert?: boolean, maintenance_to?: string, check_frequency?: integer, recovery_period?: integer, request_timeout?: integer, follow_redirects?: boolean, maintenance_days?: string[], maintenance_from?: string, monitor_group_id?: string, required_keyword?: string, playwright_script?: string, pronounceable_name: string, confirmation_period?: integer, expiration_policy_id?: integer, maintenance_timezone?: string, environment_variables?: object }
- `POST https://api.mcp.ai/api/better_stack/create/monitor/group` — Tool to create a new monitor group. Use when you need to organize related monitors under a single, logical group for better dashboard organization.
  - body: { name: string, paused?: boolean, team_name?: string, sort_index?: integer }
- `POST https://api.mcp.ai/api/better_stack/create/on/call/schedule` — Tool to create a new on-call schedule. Use when you need to set up a new on-call calendar for managing team rotations.
  - body: { name: string, team_name?: string }
- `POST https://api.mcp.ai/api/better_stack/create/outgoing/webhook` — Tool to create a new outgoing webhook integration. Use when you need to register an endpoint to receive event notifications from Better Stack.
  - body: { url: string, name: string, team_name?: string, trigger_type: string, on_incident_started?: boolean, on_incident_resolved?: boolean, on_incident_acknowledged?: boolean, custom_webhook_template_attributes?: object }
- `POST https://api.mcp.ai/api/better_stack/create/policy/group` — Tool to create a new escalation policy group. Use when you need to organize related escalation policies under a single logical group.
  - body: { name: string, team_name?: string, sort_index?: integer }
- `POST https://api.mcp.ai/api/better_stack/create/source/group` — Tool to create a new source group. Use when you have finalized the group name (and optional sort index) and need to organize related log sources under that group.
  - body: { name: string, team_name?: string, sort_index?: integer }
- `POST https://api.mcp.ai/api/better_stack/create/status/page/group` — Tool to create a new status page group. Use when you need to organize related status pages under a single logical group with a descriptive name.
  - body: { name: string, team_name?: string, sort_index?: integer }
- `POST https://api.mcp.ai/api/better_stack/create/status/page/report` — Tool to create a new status page report (incident or maintenance). Use when you need to publish a status update about an ongoing incident or scheduled maintenance on a status page.
  - body: { title: string, ends_at?: string, message: string, starts_at?: string, report_type?: string, published_at?: string, status_page_id: string, affected_resources: object[], notify_subscribers?: boolean }
- `POST https://api.mcp.ai/api/better_stack/create/status/page/resource` — Tool to create a new status page resource. Use when you need to add a monitor, heartbeat, or other resource to a status page for public visibility tracking.
  - body: { position?: integer, explanation?: string, public_name?: string, resource_id: string, widget_type?: string, resource_type: string, fixed_position?: boolean, status_page_id: string, mark_as_down_for?: string, mark_as_degraded_for?: string, status_page_section_id?: integer, mark_as_down_metadata_rule?: object, mark_as_degraded_metadata_rule?: object }
- `POST https://api.mcp.ai/api/better_stack/create/status/page/section` — Tool to create a new section on a status page. Use when organizing resources into logical groups (e.g., by datacenter or service type). Leave name blank to hide the section header.
  - body: { name?: string, position?: integer, status_page_id: string }
- `POST https://api.mcp.ai/api/better_stack/create/status/update` — Tool to create a new status update for an existing status report. Use when you need to post an update about the current state of an incident or maintenance. The update can include a message, affected 
  - body: { message?: string, published_at?: string, status_page_id: string, status_report_id: string, affected_resources: object[], notify_subscribers?: boolean }
- `POST https://api.mcp.ai/api/better_stack/create/urgencies` — Tool to create a new severity level (urgency) for incident management. Use when you need to define notification preferences for different incident severity levels.
  - body: { sms: boolean, call: boolean, name: string, push: boolean, email: boolean, team_name?: string, critical_alert?: boolean }
- `POST https://api.mcp.ai/api/better_stack/create/urgency/group` — Tool to create a new urgency group (severity group) for incident categorization. Use when you need to define severity levels for monitoring alerts and incidents.
  - body: { name: string, team_name?: string, sort_index?: integer }
- `POST https://api.mcp.ai/api/better_stack/delete/escalation/policy` — Tool to delete an escalation policy by ID. Use when you need to permanently remove an existing escalation policy after confirming its ID.
  - body: { policy_id: integer }
- `POST https://api.mcp.ai/api/better_stack/delete/heartbeat` — Tool to permanently delete a heartbeat by ID. Use when you need to remove a heartbeat that is no longer needed.
  - body: { heartbeat_id: string }
- `POST https://api.mcp.ai/api/better_stack/delete/heartbeat/group` — Tool to permanently delete a heartbeat group by ID. Use when you need to remove a heartbeat group that is no longer needed.
  - body: { heartbeat_group_id: string }
- `POST https://api.mcp.ai/api/better_stack/delete/incident` — Tool to permanently delete an existing incident by ID. Use when you need to remove an incident from Better Stack Uptime.
  - body: { incident_id: string }
- `POST https://api.mcp.ai/api/better_stack/delete/incident/comment` — Tool to delete an existing comment from an incident. Use when you need to remove a comment that was previously added via the API. Note: Only comments created via the API can be deleted; comments creat
  - body: { comment_id: string, incident_id: string }
- `POST https://api.mcp.ai/api/better_stack/delete/monitor` — Tool to permanently delete a monitor by ID from Better Stack Uptime. Use when you need to remove a monitor that is no longer needed.
  - body: { monitor_id: string }
- `POST https://api.mcp.ai/api/better_stack/delete/monitor/group` — Tool to permanently delete a monitor group by ID from Better Stack Uptime. Use when you need to remove a monitor group that is no longer needed.
  - body: { monitor_group_id: string }
- `POST https://api.mcp.ai/api/better_stack/delete/on/call/schedule` — Tool to permanently delete an on-call schedule by ID. Use when you need to remove an on-call calendar that is no longer needed.
  - body: { schedule_id: string }
- `POST https://api.mcp.ai/api/better_stack/delete/outgoing/webhook` — Tool to delete an outgoing webhook integration by ID. Use when you need to permanently remove an existing webhook integration.
  - body: { outgoing_webhook_id: string }
- `POST https://api.mcp.ai/api/better_stack/delete/policy/group` — Tool to delete an escalation policy group by ID. Use when you need to permanently remove an existing escalation policy group after confirming its ID.
  - body: { policy_group_id: integer }
- `POST https://api.mcp.ai/api/better_stack/delete/source/group` — Tool to permanently delete a source group by ID from Better Stack Telemetry (Logs). Source groups are used to organize related log sources. Use this action when you need to remove a source group that 
  - body: { source_group_id: string }
- `POST https://api.mcp.ai/api/better_stack/delete/status/page/group` — Tool to delete a status page group by ID. Use when you need to permanently remove an existing status page group.
  - body: { status_page_group_id: string }
- `POST https://api.mcp.ai/api/better_stack/delete/status/page/report` — Tool to permanently delete a status page report by ID from Better Stack Uptime. Use this action when you need to remove an existing status page report that is no longer needed. The report will be perm
  - body: { report_id: string, status_page_id: string }
- `POST https://api.mcp.ai/api/better_stack/delete/status/page/resource` — Tool to delete an existing resource from a status page. Use when you need to permanently remove a resource (monitor or heartbeat) that is displayed on a status page.
  - body: { resource_id: string, status_page_id: string }
- `POST https://api.mcp.ai/api/better_stack/delete/status/page/section` — Tool to permanently delete a status page section by ID. Use when you need to remove a section from a status page that is no longer needed. Sections organize resources on status pages for better visibi
  - body: { section_id: string, status_page_id: string }
- `POST https://api.mcp.ai/api/better_stack/delete/status/page/status/report/status/update` — Tool to delete an existing status update from a status report. Use when you need to permanently remove a status update after confirming its ID.
  - body: { status_page_id: string, status_report_id: string, status_update_id: string }
- `POST https://api.mcp.ai/api/better_stack/delete/urgency` — Tool to delete a severity (urgency) by ID. Use when you need to permanently remove an existing severity level after confirming its ID.
  - body: { urgency_id: integer }
- `POST https://api.mcp.ai/api/better_stack/delete/urgency/group` — Tool to permanently delete an urgency group (severity group) by ID. Use when you need to remove an existing severity group that is no longer needed.
  - body: { urgency_group_id: string }
- `POST https://api.mcp.ai/api/better_stack/escalate/incident` — Tool to escalate an ongoing incident to a user, team, schedule, policy, or organization. Use when you need to route an active incident to the appropriate responders with specified notification channel
  - body: { sms?: boolean, call?: boolean, push?: boolean, email?: boolean, team_id?: integer, user_id?: integer, metadata?: object, policy_id?: integer, team_name?: string, user_email?: string, incident_id: string, schedule_id?: integer, critical_alert?: boolean, escalation_type: string }
- `POST https://api.mcp.ai/api/better_stack/get/escalation/policy` — Tool to get a single escalation policy by its ID. Use when you need full details of a specific escalation policy including its steps, repeat settings, and team information.
  - body: { policy_id: string }
- `POST https://api.mcp.ai/api/better_stack/get/heartbeat` — Tool to get a single heartbeat by ID. Use when you need to fetch details of a specific heartbeat.
  - body: { heartbeat_id: string }
- `POST https://api.mcp.ai/api/better_stack/get/heartbeat/availability` — Tool to retrieve availability summary for a specific heartbeat. Use when you need availability metrics for a heartbeat within an optional date range.
  - body: { to_date?: string, from_date?: string, heartbeat_id: string }
- `POST https://api.mcp.ai/api/better_stack/get/heartbeat/group` — Tool to get a single heartbeat group by ID. Use when you need to fetch details of a specific heartbeat group.
  - body: { heartbeat_group_id: string }
- `POST https://api.mcp.ai/api/better_stack/get/incident/comment` — Tool to get a single comment from an incident. Use when you need to retrieve details of a specific comment on a Better Stack incident.
  - body: { comment_id: string, incident_id: string }
- `POST https://api.mcp.ai/api/better_stack/get/monitor` — Tool to get a single monitor. Use when you need full details of a specific monitor by its ID.
  - body: { monitor_id: string }
- `POST https://api.mcp.ai/api/better_stack/get/monitor/availability` — Tool to return an availability summary for a specific monitor. Use when you need uptime percentage and incident details within an optional date range.
  - body: { to_date?: string, from_date?: string, monitor_id: string }
- `POST https://api.mcp.ai/api/better_stack/get/monitor/groups` — Tool to get a single monitor group by ID. Use when you need to fetch details of a specific monitor group.
  - body: { monitor_group_id: string }
- `POST https://api.mcp.ai/api/better_stack/get/monitor/groups/monitors` — Tool to get all monitors belonging to a monitor group. Use when you need to retrieve all monitors within a specific monitor group, with optional pagination support.
  - body: { page?: integer, per_page?: integer, monitor_group_id: integer }
- `POST https://api.mcp.ai/api/better_stack/get/monitor/response/times` — Retrieves response time performance metrics for a specific uptime monitor. Returns detailed timing data (DNS lookup, connection, TLS handshake, data transfer) grouped by geographic region. By default 
  - body: { to?: string, from?: string, limit?: integer, monitor_id: string }
- `POST https://api.mcp.ai/api/better_stack/get/on/call/schedule` — Tool to get a single on-call schedule by ID. Use when you need to retrieve who is currently on-call for a specific schedule. Optionally specify a date to check on-call status at a specific time.
  - body: { date?: string, schedule_id: string }
- `POST https://api.mcp.ai/api/better_stack/get/outgoing/webhook` — Tool to get a single outgoing webhook integration by ID. Use when you need to retrieve details of a specific webhook integration.
  - body: { outgoing_webhook_id: string }
- `POST https://api.mcp.ai/api/better_stack/get/policy/group` — Tool to get a single escalation policy group. Use when you need full details of a specific escalation policy group by its ID.
  - body: { policy_group_id: string }
- `POST https://api.mcp.ai/api/better_stack/get/status/page` — Tool to get a single status page by ID. Use when you need detailed information about a specific status page.
  - body: { status_page_id: string }
- `POST https://api.mcp.ai/api/better_stack/get/status/page/group` — Tool to get a single status page group by ID. Use when you need to retrieve details of a specific status page group.
  - body: { status_page_group_id: string }
- `POST https://api.mcp.ai/api/better_stack/get/status/page/report` — Tool to get a single status page report by ID. Use when you need detailed information about a specific status report or incident.
  - body: { report_id: string, status_page_id: string }
- `POST https://api.mcp.ai/api/better_stack/get/status/page/resource` — Tool to get a single status page resource by ID. Use when you need detailed information about a specific resource on a status page.
  - body: { resource_id: string, status_page_id: string }
- `POST https://api.mcp.ai/api/better_stack/get/status/page/section` — Tool to get a single status page section. Use when you need details of a specific section within a status page by its ID.
  - body: { section_id: string, status_page_id: string }
- `POST https://api.mcp.ai/api/better_stack/get/status/update` — Tool to get a single status update by its ID. Use when you need details of a specific status update for a status report on your status page.
  - body: { status_page_id: string, status_report_id: string, status_update_id: string }
- `POST https://api.mcp.ai/api/better_stack/get/uptime/api/token` — Tool to retrieve the configured Uptime API token. Use when you need the Uptime API token for subsequent authenticated API calls.
- `POST https://api.mcp.ai/api/better_stack/get/urgency` — Tool to get a single severity level (urgency) by ID. Use when you need to fetch details of a specific urgency configuration.
  - body: { urgency_id: string }
- `POST https://api.mcp.ai/api/better_stack/get/urgency/group` — Tool to get a single urgency group (severity group) by ID. Use when you need to fetch details of a specific urgency group.
  - body: { urgency_group_id: string }
- `POST https://api.mcp.ai/api/better_stack/list/aws/cloudwatch/integrations` — Tool to list all AWS CloudWatch integrations. Use when you need to retrieve and inspect all configured AWS CloudWatch on-call integrations.
  - body: { page?: integer, per_page?: integer, team_name?: string }
- `POST https://api.mcp.ai/api/better_stack/list/azure/integrations` — Tool to list all Azure integrations. Use when you need to retrieve and inspect all configured Azure on-call integrations.
  - body: { page?: integer, per_page?: integer, team_name?: string }
- `POST https://api.mcp.ai/api/better_stack/list/catalog/relations` — Tool to list all catalog relations. Use when you need to retrieve all catalog relations, supports pagination.
  - body: { page?: integer, per_page?: integer }
- `POST https://api.mcp.ai/api/better_stack/list/datadog/integrations` — Tool to list all Datadog integrations. Use when you need to retrieve and inspect all configured Datadog on-call integrations.
  - body: { page?: integer, per_page?: integer, team_name?: string }
- `POST https://api.mcp.ai/api/better_stack/list/elastic/integrations` — Tool to list Elastic integrations. Use when you need to retrieve and inspect all configured Elastic integrations.
  - body: { page?: integer, per_page?: integer, team_name?: string }
- `POST https://api.mcp.ai/api/better_stack/list/email/integrations` — Tool to list email integrations. Use when you need to retrieve and inspect all configured email integrations with optional team filtering and pagination support.
  - body: { page?: integer, team_name?: string }
- `POST https://api.mcp.ai/api/better_stack/list/google/monitoring/integrations` — Tool to list all Google Monitoring integrations. Use when you need to view your configured Google Monitoring on-call integrations with pagination support.
  - body: { page?: integer, per_page?: integer, team_name?: string }
- `POST https://api.mcp.ai/api/better_stack/list/grafana/integrations` — Tool to list all Grafana integrations. Use when you need to retrieve and inspect all configured Grafana integrations.
  - body: { page?: integer, team_name?: string }
- `POST https://api.mcp.ai/api/better_stack/list/heartbeat/groups` — Tool to list all heartbeat groups. Use when you need to retrieve configured heartbeat groups with optional filtering by team name.
  - body: { page?: integer, per_page?: integer, team_name?: string }
- `POST https://api.mcp.ai/api/better_stack/list/heartbeats` — Tool to list all heartbeats. Use when you need to retrieve your configured uptime heartbeats with optional pagination.
  - body: { page?: integer, team_name?: string }
- `POST https://api.mcp.ai/api/better_stack/list/incidents/comments` — Tool to list all comments on an incident. Use when you need to retrieve all comments associated with a Better Stack incident.
  - body: { incident_id: string }
- `POST https://api.mcp.ai/api/better_stack/list/incidents/timeline` — Tool to retrieve all timeline events for an incident. Use when you need to get a chronological history of events, comments, responses, and changes for a specific incident in Better Stack. Returns all 
  - body: { incident_id: string }
- `POST https://api.mcp.ai/api/better_stack/list/incidents/uptime` — Tool to list all incidents with optional filtering by monitor, heartbeat, date range, or resolution status. Supports pagination with default of 10 per page and maximum of 50.
  - body: { to?: string, from?: string, page?: integer, per_page?: integer, resolved?: boolean, team_name?: string, monitor_id?: integer, heartbeat_id?: integer }
- `POST https://api.mcp.ai/api/better_stack/list/jira/integrations` — Tool to list all Jira integrations. Use when you need to retrieve and inspect all configured Jira integrations.
  - body: { page?: integer, per_page?: integer, team_name?: string }
- `POST https://api.mcp.ai/api/better_stack/list/metadata` — Tool to list all existing metadata. Use when you need to retrieve metadata records with optional filtering by team, owner resource ID, or owner resource type.
  - body: { page?: integer, owner_id?: string, per_page?: integer, team_name?: string, owner_type?: string }
- `POST https://api.mcp.ai/api/better_stack/list/monitor/groups` — Tool to list all monitor groups. Use when you need to retrieve existing monitor groups with optional team filtering and pagination support.
  - body: { page?: integer, per_page?: integer, team_name?: string }
- `POST https://api.mcp.ai/api/better_stack/list/monitors` — Tool to list all monitors. Use when you need to retrieve existing uptime monitors with optional filtering by URL or name and pagination.
  - body: { url?: string, page?: integer, per_page?: integer, pronounceable_name?: string }
- `POST https://api.mcp.ai/api/better_stack/list/new/relic/integrations` — Tool to list New Relic integrations. Use when you need to retrieve and inspect all configured New Relic integrations with pagination support.
  - body: { page?: integer, per_page?: integer, team_name?: string }
- `POST https://api.mcp.ai/api/better_stack/list/on/call/events` — Tool to list all events for a specific on-call schedule. Use when you need to retrieve the calendar of scheduled on-call periods for a team.
  - body: { schedule_id: string }
- `POST https://api.mcp.ai/api/better_stack/list/on/call/schedules` — Tool to list all on-call schedules. Use when you need to retrieve all configured on-call calendars.
  - body: { page?: integer, per_page?: integer }
- `POST https://api.mcp.ai/api/better_stack/list/outgoing/webhooks` — Tool to list all outgoing webhook integrations. Use when you need to retrieve configured webhook endpoints for event notifications.
  - body: { page?: integer, team_name?: string }
- `POST https://api.mcp.ai/api/better_stack/list/pager/duty/webhooks` — Tool to list PagerDuty integrations. Use when you need to retrieve and inspect all configured PagerDuty integrations.
  - body: { page?: integer, per_page?: integer, team_name?: string }
- `POST https://api.mcp.ai/api/better_stack/list/policies` — Tool to list all escalation policies. Use when you need to retrieve existing escalation policies with optional filtering by team name.
  - body: { page?: integer, per_page?: integer, team_name?: string }
- `POST https://api.mcp.ai/api/better_stack/list/policy/groups` — Tool to list all escalation policy groups. Use when you need to retrieve existing policy groups with optional team filtering and pagination support.
  - body: { page?: integer, per_page?: integer, team_name?: string }
- `POST https://api.mcp.ai/api/better_stack/list/prometheus/integrations` — Tool to list all Prometheus integrations. Use when you need to retrieve and inspect all configured Prometheus on-call integrations.
  - body: { page?: integer, per_page?: integer, team_name?: string }
- `POST https://api.mcp.ai/api/better_stack/list/single/incident` — Tool to retrieve detailed information about a single incident by its ID. Use when you need to get the full details of a specific incident including its status, timeline, affected regions, and notifica
  - body: { incident_id: string }
- `POST https://api.mcp.ai/api/better_stack/list/slack/integrations` — Tool to list all Slack integrations. Use when you need to retrieve and inspect all configured Slack channel integrations.
  - body: { page?: integer, per_page?: integer, team_name?: string }
- `POST https://api.mcp.ai/api/better_stack/list/splunk/on/call/integrations` — Tool to list all Splunk On-Call integrations. Use when you need to retrieve and inspect all configured Splunk On-Call on-call integrations.
  - body: { page?: integer, per_page?: integer, team_name?: string }
- `POST https://api.mcp.ai/api/better_stack/list/status/page/groups` — Tool to list all status page groups. Use when you need to retrieve existing status page groups with optional pagination.
  - body: { page?: integer, per_page?: integer }
- `POST https://api.mcp.ai/api/better_stack/list/status/page/groups/status/pages` — Tool to list status pages within a specific status page group. Use when you need to retrieve all status pages belonging to a particular group with optional pagination.
  - body: { page?: integer, group_id: string, per_page?: integer }
- `POST https://api.mcp.ai/api/better_stack/list/status/page/report/status/updates` — Tool to list all status updates for a status page report. Use when you need to retrieve updates posted on a specific status page report with optional pagination.
  - body: { page?: integer, per_page?: integer, report_id: string, status_page_id: string }
- `POST https://api.mcp.ai/api/better_stack/list/status/page/reports` — Tool to list all reports on a status page. Use when you need to retrieve existing status page reports with optional pagination via `page` and `per_page`.
  - body: { page?: integer, per_page?: integer, status_page_id: string }
- `POST https://api.mcp.ai/api/better_stack/list/status/page/sections` — Tool to list all sections of a specific status page. Use when you need to retrieve the existing sections within a status page.
  - body: { page?: integer, per_page?: integer, status_page_id: string }
- `POST https://api.mcp.ai/api/better_stack/list/status/pages` — Tool to list all your status pages. Use when you need to retrieve existing status pages with optional pagination.
  - body: { page?: integer, per_page?: integer }
- `POST https://api.mcp.ai/api/better_stack/list/status/pages/resources` — Tool to list all resources on a status page. Use when you need to retrieve existing resources with optional pagination.
  - body: { page?: integer, per_page?: integer, status_page_id: string }
- `POST https://api.mcp.ai/api/better_stack/list/urgencies` — Tool to list all severity levels (urgencies). Use when you need to retrieve existing incident severity configurations with their notification settings.
  - body: { team_name?: string }
- `POST https://api.mcp.ai/api/better_stack/list/urgency/groups` — Tool to list all urgency groups (severity groups). Use when you need to retrieve existing urgency groups with optional team filtering and pagination support.
  - body: { page?: integer, per_page?: integer, team_name?: string }
- `POST https://api.mcp.ai/api/better_stack/resolve/incident` — Tool to resolve an ongoing incident. Use when you need to mark an incident as resolved and close it. Resolving an incident signals that the issue has been fixed and stops any further escalations.
  - body: { incident_id: string, resolved_by?: string }
- `POST https://api.mcp.ai/api/better_stack/update/escalation/policy` — Tool to update an existing escalation policy. Use when you need to modify policy attributes like name, repeat settings, or escalation steps. Only the fields you provide will be updated (partial update
  - body: { name?: string, steps?: object[], policy_id: string, repeat_count?: integer, repeat_delay?: integer }
- `POST https://api.mcp.ai/api/better_stack/update/heartbeat` — Tool to update an existing heartbeat configuration. Use after retrieving a heartbeat and choosing which fields to change.
  - body: { sms?: boolean, call?: boolean, name?: string, push?: boolean, email?: boolean, grace?: integer, paused?: boolean, period?: integer, policy_id?: string, team_wait?: integer, sort_index?: integer, heartbeat_id: string, critical_alert?: boolean, maintenance_to?: string, maintenance_days?: string[], maintenance_from?: string, heartbeat_group_id?: string, maintenance_timezone?: string }
- `POST https://api.mcp.ai/api/better_stack/update/heartbeat/group` — Updates an existing heartbeat group's properties. Use to rename a group, change its display order, or pause/resume monitoring for all heartbeats in the group.
  - body: { name?: string, paused?: boolean, sort_index?: integer, heartbeat_group_id: string }
- `POST https://api.mcp.ai/api/better_stack/update/incident/comment` — Tool to update an existing comment on an incident. Use when you need to modify the content of a comment that was previously added to a Better Stack incident.
  - body: { content: string, comment_id: string, incident_id: string }
- `POST https://api.mcp.ai/api/better_stack/update/monitor` — Tool to update an existing uptime monitor configuration. Use when you need to modify settings of an existing monitor such as check frequency, notification preferences, URLs, or monitoring behavior.
  - body: { sms?: boolean, url?: string, call?: boolean, port?: string, push?: boolean, email?: boolean, paused?: boolean, regions?: string[], policy_id?: string, team_wait?: integer, ip_version?: string, monitor_id: string, verify_ssl?: boolean, http_method?: string, monitor_type?: string, request_body?: string, auth_password?: string, auth_username?: string, scenario_name?: string, critical_alert?: boolean, maintenance_to?: string, ssl_expiration?: integer, check_frequency?: integer, recovery_period?: integer, request_headers?: object[], request_timeout?: integer, follow_redirects?: boolean, maintenance_days?: string[], maintenance_from?: string, monitor_group_id?: string, remember_cookies?: boolean, required_keyword?: string, domain_expiration?: integer, playwright_script?: string, pronounceable_name?: string, confirmation_period?: integer, expiration_policy_id?: integer, maintenance_timezone?: string, environment_variables?: object, expected_status_codes?: integer[] }
- `POST https://api.mcp.ai/api/better_stack/update/monitor/group` — Updates an existing monitor group's properties. Use to rename a group, change its display order, or pause/resume monitoring for all monitors in the group.
  - body: { name?: string, paused?: boolean, sort_index?: integer, monitor_group_id: string }
- `POST https://api.mcp.ai/api/better_stack/update/on/call/schedule` — Tool to update an on-call schedule's name. Use when you need to rename an existing on-call calendar.
  - body: { name: string, schedule_id: string }
- `POST https://api.mcp.ai/api/better_stack/update/outgoing/webhook` — Tool to update an existing outgoing webhook integration. Use when you need to modify the configuration of a webhook endpoint.
  - body: { url?: string, name?: string, on_incident_started?: boolean, outgoing_webhook_id: string, on_incident_reopened?: boolean, on_incident_resolved?: boolean, on_incident_acknowledged?: boolean, custom_webhook_template_attributes?: object }
- `POST https://api.mcp.ai/api/better_stack/update/policy/group` — Updates an existing escalation policy group's properties. Use to rename a group or change its display order.
  - body: { name?: string, sort_index?: integer, policy_group_id: string }
- `POST https://api.mcp.ai/api/better_stack/update/source/group` — Update an existing source group in Better Stack Logs/Telemetry. Use this to rename a source group or change its sort order. Requires a Telemetry API token (different from Uptime API token).
  - body: { name?: string, sort_index?: integer, source_group_id: string }
- `POST https://api.mcp.ai/api/better_stack/update/status/page/group` — Tool to update an existing status page group. Use when you need to modify the name or display order of a status page group.
  - body: { name?: string, sort_index?: integer, status_page_group_id: string }
- `POST https://api.mcp.ai/api/better_stack/update/status/page/report` — Tool to update an existing status page report. Use when you need to modify the title, timing, or affected resources of an existing incident or maintenance report.
  - body: { title?: string, ends_at?: string, report_id: string, starts_at?: string, status_page_id: string, affected_resources?: object[] }
- `POST https://api.mcp.ai/api/better_stack/update/status/page/resource` — Tool to update an existing status page resource. Use when you need to modify the display name, position, widget type, or other properties of a resource on a status page.
  - body: { position?: integer, explanation?: string, public_name?: string, resource_id: string, widget_type?: string, resource_type?: string, fixed_position?: boolean, status_page_id: string, mark_as_down_for?: string, mark_as_degraded_for?: string, status_page_section_id?: string }
- `POST https://api.mcp.ai/api/better_stack/update/status/page/section` — Tool to update an existing status page section. Use when reorganizing sections or changing their display. Leave name blank to hide the section header.
  - body: { name?: string, position?: integer, section_id: string, status_page_id: string }
- `POST https://api.mcp.ai/api/better_stack/update/status/page/status/report/status/update` — Tool to update an existing status update for a status report. Use when you need to modify the message, affected resources, or other details of a previously created status update.
  - body: { message?: string, published_at?: string, status_page_id: string, status_report_id: string, status_update_id: string, affected_resources?: object[], notify_subscribers?: boolean }
- `POST https://api.mcp.ai/api/better_stack/update/status/pages` — Tool to update an existing status page configuration. Use when modifying settings like company info, appearance, access control, or display preferences.
  - body: { theme?: string, design?: string, layout?: string, history?: integer, logo_url?: string, password?: string, timezone?: string, subdomain?: string, custom_css?: string, company_url?: string, contact_url?: string, announcement?: string, company_name?: string, ip_allowlist?: string[], subscribable?: boolean, custom_domain?: string, status_page_id: string, navigation_links?: object[], password_enabled?: boolean, automatic_reports?: boolean, custom_javascript?: string, google_analytics_id?: string, min_incident_length?: integer, status_page_group_id?: string, hide_from_search_engines?: boolean }
- `POST https://api.mcp.ai/api/better_stack/update/urgencies` — Tool to update an existing severity level (urgency) configuration. Use when you need to modify notification settings or name for a specific severity level.
  - body: { sms: boolean, call: boolean, name: string, push: boolean, email: boolean, urgency_id: string }
- `POST https://api.mcp.ai/api/better_stack/update/urgency/group` — Tool to update an existing urgency group (severity group). Use when you need to modify the name or sort order of a severity group.
  - body: { name?: string, sort_index?: integer, urgency_group_id: string }

## Example prompts
- "What can I do in Better Stack?"
- "Show me a summary of my Better Stack account"

## More
- Page: https://mcp.ai/better_stack
- Agent spec (llms.txt): https://mcp.ai/better_stack/llms.txt
- Postman collection: https://mcp.ai/better_stack/postman.json
