Better Stack
Better Stack provides monitoring, logging, and incident management solutions to help teams ensure the reliability and performance of their applications.
Verdict
Common use cases
- Audit escalation policies before on-call rotation
- Create heartbeat monitors for new microservices
- Query uptime metrics during incident review
- Organize log sources into logical groups
- Register webhooks for Slack alert routing
Integration
- Vendor
- Better Stack
- Category
- other
- Auth
- API_KEY
- Tools
- 26
- Composio slug
better_stack
Tools
- Create Escalation Policy
Tool to create a new escalation policy. use when defining how incidents should escalate across team members.
- 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'."
- Create Outgoing Webhook Integration
Tool to create a new outgoing webhook integration. use when you need to register an endpoint to receive event notifications from 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.
- Delete Escalation Policydestructive
Tool to delete an escalation policy by id. use when you need to permanently remove an existing escalation policy after confirming its id.
- Delete Source Groupdestructive
Tool to delete a source group by id. use when you need to permanently remove an existing source group after confirming it is no longer needed.
- Get Heartbeat
Tool to get a single heartbeat by id. use when you need to fetch details of a specific heartbeat.
- 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.
- Get Monitor
Tool to get a single monitor. use when you need full details of a specific monitor by its id.
- 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.
- Get Monitor Response Times
Tool to return response times for a specific monitor. use when you have a monitor id and need performance metrics over the last 24 hours.
- Get Status Page
Tool to get a single status page by id. use when you need detailed information about a specific status page.
- Get Telemetry API Token
Tool to retrieve the telemetry api token from the integration configuration. use when you need to authenticate telemetry api requests.
- 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.
- List Catalog Relations
Tool to list all catalog relations. use when you need to retrieve all catalog relations, supports pagination.
- 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.
- List Grafana Integrations
Tool to list all grafana integrations. use when you need to retrieve and inspect all configured grafana integrations.
- List Heartbeats
Tool to list all heartbeats. use when you need to retrieve your configured uptime heartbeats with optional pagination.
- 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.
- 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.
- List On-Call Schedules
Tool to list all on-call schedules. use when you need to retrieve all configured on-call calendars.
- 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`.
- List Status Pages
Tool to list all your status pages. use when you need to retrieve existing status pages with optional pagination.
- Update Heartbeat
Tool to update an existing heartbeat configuration. use after retrieving a heartbeat and choosing which fields to change.
- Update Heartbeat Group
Tool to update an existing heartbeat group. use when you need to modify attributes like name, interval, or pause status.
- Update Source Group
Tool to update an existing source group. use when you need to rename or reorder a source group.
Setup
Setup guide
- 11. In Switchy, open your workspace settings and navigate to the Integrations tab. 2. Click 'Add Integration', search for Better Stack, and select it from the list. 3. In a new browser tab, log into Better Stack, go to Account Settings > API Tokens, and generate a new token with full permissions. 4. Copy the token, return to Switchy, and paste it into the API Key field. 5. Click 'Connect' — Switchy will verify the token by fetching your account details. 6. Once connected, open any Space and type '@Better Stack list my heartbeat groups' to confirm the integration responds. 7. If the MCP returns your groups, you're ready to create monitors, escalation policies, and webhooks from chat.
What teammates see: by default, memories from Better Stack are scoped to the Space (PROJECT visibility) - you can mark any memory PRIVATE or share it ORG-wide.
Works well with
Top models
Compatibility data appears once enough Spaces have used this MCP together with a given model.
How Switchy teams use it
Starter prompts
List All Heartbeats
@Better Stack show me all heartbeat monitors in our account, including their current status and last ping time.Open in a Space →
Create Escalation Policy
@Better Stack create an escalation policy named 'Backend On-Call' that pages the backend team immediately, then escalates to engineering leads after 15 minutes if unacknowledged.Open in a Space →
Check Heartbeat Availability
@Better Stack get the availability summary for heartbeat ID 12345 over the last 30 days, including any downtime incidents.Open in a Space →
Organize Source Groups
@Better Stack create a source group called 'Payment Services' so we can organize all payment-related log sources under one label.Open in a Space →
Register Outgoing Webhook
@Better Stack create an outgoing webhook integration that sends incident notifications to https://alerts.example.com/webhook whenever an alert fires.Open in a Space →
Example outputs
Illustrative - representative of the model's voice and quality, not literal recordings.
@betterstack show me the availability summary for our payment-processor heartbeat over the last 7 days
Here's the availability summary for the payment-processor heartbeat (ID: hb_xyz789) from the past 7 days: • Overall uptime: 99.2% • Total checks: 10,080 (every 60 seconds) • Missed checks: 81 • Longest downtime: 12 minutes on Jan 15 at 03:47 UTC The heartbeat missed several check-ins during early morning hours on the 15th, likely during your scheduled maintenance window. All other gaps were under 2 minutes.
This example shows Better Stack's monitoring retrieval. You'll need the heartbeat ID (found via list or dashboard). Availability data reflects actual check-in history, so results vary by your service's real uptime. API key must have read access to heartbeats.
@betterstack create an escalation policy called 'Critical Incidents' that pages the on-call engineer immediately, then escalates to the team lead after 10 minutes
Created escalation policy 'Critical Incidents' (ID: ep_abc123) with the following rules: 1. Immediately notify: on-call-engineer (Slack + SMS) 2. After 10 minutes, escalate to: team-lead (Slack + SMS + phone call) This policy is now available for assignment to incident workflows. You can attach it to specific monitors or heartbeat groups via the Better Stack dashboard or by updating those resources through additional prompts.
This demonstrates Better Stack's incident management setup. The MCP creates the policy structure, but you must separately assign it to monitors/heartbeats. Requires write permissions on escalation policies. Note that team member identifiers (like 'on-call-engineer') must already exist in your Better Stack account.
@betterstack list all our source groups, then create a new one called 'ML Pipeline Logs' to organize our training job sources
Current source groups in your Better Stack account: • Production Services (12 sources) • Staging Environment (5 sources) • Infrastructure Logs (8 sources) Created new source group 'ML Pipeline Logs' (ID: sg_def456). This group is now available for organizing log sources. To add sources to this group, update each source's configuration to reference sg_def456, or use the Better Stack dashboard to drag sources into the new group.
This example chains a read operation (list) with a write operation (create), showing how the AI can reason across Better Stack's log management structure. The MCP handles group creation but doesn't auto-assign sources—that's a separate step. Requires both read and write permissions on source groups.
Use-case deep-dives
When Better Stack MCP makes sense for incident escalation
A 6-person SRE team managing 40+ microservices needs to rotate on-call shifts and escalate incidents when the primary responder doesn't ack within 5 minutes. Better Stack's escalation policy tools let Switchy agents create and update rotation rules without opening the web UI. The MCP shines here because the team already uses Better Stack for alerting—agents can read existing policies, clone them for new services, and adjust escalation timings based on incident post-mortems. The threshold: if your team is under 3 people or you're still figuring out your on-call process, the MCP adds overhead you don't need yet. For established rotations with 4+ services, having agents manage policies during sprint planning or retros cuts 10 minutes per change.
Using Better Stack MCP to track cron and pipeline uptime
A data engineering team runs 15 nightly ETL jobs and needs to know immediately when one fails to check in. Better Stack's heartbeat tools let Switchy agents create heartbeat groups ("data pipelines", "ML training"), register new checks when pipelines are added, and pull availability reports during weekly reviews. The MCP works best when you're adding or deprecating jobs frequently—agents can create heartbeats in the same conversation where you're updating Terraform or Airflow configs. If you only have 2-3 static cron jobs, the web UI is faster. For teams managing 10+ scheduled tasks across environments, the MCP saves the context-switch and keeps heartbeat configs in sync with your actual job inventory.
When Better Stack MCP helps route incident notifications
A 5-person support-ops team at a B2B SaaS company needs to send Better Stack incident webhooks to different Slack channels based on severity and customer tier. The outgoing webhook integration tools let Switchy agents register new endpoints when you onboard a high-value customer or spin up a new Slack workspace. The MCP is the right call if you're managing 5+ webhook destinations and they change monthly—agents can create integrations, test payloads, and delete stale ones without digging through settings. If you have 1-2 static webhooks that never change, skip the MCP and set them up manually. For teams with dynamic routing rules or frequent webhook churn, the MCP keeps your notification topology documented and editable in Switchy threads.
Frequently asked
What does the Better Stack MCP do in Switchy?
It lets your AI agents create escalation policies, manage heartbeat monitors, set up webhook integrations, and organise log sources. You can automate incident response workflows, check uptime availability, and delete outdated policies without opening the Better Stack dashboard. The MCP wraps 26 Better Stack API endpoints so agents can act on monitoring data directly.
Do I need admin access to connect Better Stack?
You need an API key with write permissions to create escalation policies, heartbeat groups, and webhooks. Better Stack issues API keys at the team level, so whoever connects it should have admin or owner rights in your Better Stack account. Read-only keys will fail on any create or delete tool.
Can the MCP send alerts or page people during an incident?
No. It creates and deletes escalation policies, but it doesn't trigger alerts or page team members. Better Stack's own monitoring engine handles the actual alerting. Use this MCP to automate policy setup when you onboard new services or rotate on-call schedules, not to replace your alerting pipeline.
Why use this instead of the Better Stack API directly?
The MCP saves you from writing API client code and handling auth tokens in every script. Your agents can say "create a heartbeat group for backend services" and the MCP translates that into the correct API call. If you already have a custom integration, you don't need this.
Who on the team should connect Better Stack?
Whoever owns your on-call rotation or incident response runbooks. They'll use the MCP to automate policy changes when engineers join or leave, or when you spin up new services. If your team shares a single Better Stack account, one connection in Switchy is enough for everyone.