Better Stack
Better Stack: мониторинг доступности, инциденты и SQL-запросы к телеметрии
Что умеет
- Выполнять SQL-запросы к логам, трейсам и метрикам
- Строить линейные графики по результатам запросов
- Создавать, эскалировать и закрывать инциденты
- Просматривать мониторы, время отклика и heartbeat-проверки
- Смотреть расписание дежурств и политики эскалации
Какие данные видит
Ассистент видит телеметрию, инциденты и данные аптайма подключённого аккаунта Better Stack и может создавать и изменять записи об инцидентах.
Нужен ли аккаунт
Не нужен: сервер работает без входа
Better Stack собирает логи, трейсы и метрики систем и даёт к ним доступ через MCP-сервер. Ассистент в Claude или Cursor может выполнять SQL-запросы к телеметрии, строить графики по результатам и работать с инцидентами — от создания до эскалации и разрешения. Отдельно доступны данные аптайма: мониторы, время отклика, heartbeat-проверки и дежурства on-call.
Как подключить
Как подключить Better Stack к Claude
Адрес сервера, который нужно вставить в настройках Claude:
https://betterstack.run.tools
- Откройте Claude (сайт claude.ai или приложение для компьютера).
- Перейдите в Настройки → Коннекторы (в английском интерфейсе: Settings → Connectors).
- Нажмите Добавить пользовательский коннектор (Add custom connector).
- Вставьте адрес сервера, скопированный ниже, в поле URL удалённого MCP-сервера и нажмите Добавить.
- В чате нажмите + → Коннекторы и включите новый коннектор.
Пользовательские коннекторы доступны на тарифах Free, Pro, Max, Team и Enterprise. На Free можно добавить только один. В Team и Enterprise коннектор сначала добавляет владелец организации в Настройки организации → Коннекторы.
Авторизация
После нажатия Добавить откроется окно входа в сервис. Войдите под своим аккаунтом и подтвердите доступ. Пароль Claude не видит.
Как подключить Better Stack к ChatGPT
Адрес сервера, который нужно вставить в настройках ChatGPT:
https://betterstack.run.tools
- Откройте ChatGPT в браузере (chatgpt.com). Нужен тариф Plus, Pro, Business, Enterprise или Edu.
- Один раз включите режим разработчика: Настройки → Приложения → Дополнительные настройки → Режим разработчика (Settings → Apps → Advanced settings → Developer mode).
- Откройте Настройки → Коннекторы и нажмите Создать (Create).
- Заполните форму: Название (любое), Описание (одна фраза, что делает сервис), URL MCP-сервера (скопируйте ниже).
- В поле Аутентификация выберите OAuth, если сервис требует вход, иначе Нет. Нажмите Создать.
- В новом чате откройте + → Приложения/Коннекторы и включите коннектор.
Название раздела у OpenAI менялось (Connectors → Apps/Plugins). Если пункт называется иначе, ищите «режим разработчика» в настройках. В рабочих пространствах Business/Enterprise администратор должен разрешить пользовательские коннекторы.
Авторизация
При первом использовании ChatGPT откроет окно входа в сервис. Войдите и подтвердите доступ.
Как подключить Better Stack к Cursor
Адрес сервера, который нужно вставить в настройках Cursor:
https://betterstack.run.tools
Быстрый способ: нажмите кнопку Открыть в Cursor ниже, Cursor сам предложит добавить сервер.
Вручную:
- В Cursor откройте Settings → Cursor Settings → MCP и нажмите Add new global MCP server.
- Вставьте JSON, скопированный ниже, в открывшийся файл
~/.cursor/mcp.json(для одного проекта:.cursor/mcp.jsonв корне проекта). - Сохраните файл. Сервер появится в списке MCP; при необходимости пройдите авторизацию по кнопке рядом с ним.
Авторизация
Если сервис требует вход, рядом с сервером в списке MCP появится кнопка авторизации.
Список инструментов сервера (60)
Технические названия из tools/list. Нужны только разработчикам.
| telemetry_query | Execute a ClickHouse SQL query to retrieve logs, traces/spans, errors, and metrics from telemetry data. - **IMPORANT**: Use `telemetry_get_query_instructions_tool` to get instructions on how to create the correct query for logs and spans - **IMPORANT**: Use `telemetry_get_errors_query_instructions_tool` to get instructions on how to create the correct query for errors - **IMPORANT**: Use `telemetry_get_metrics_query_instructions_tool` to get instructions on how to create the correct query for metrics |
| telemetry_chart | Execute a ClickHouse SQL query and display the result as a line chart. Query instructions (column aliases, time granularity, data access patterns) are in: - `telemetry_get_query_instructions_tool` — logs and spans - `telemetry_get_errors_query_instructions_tool` — errors - `telemetry_get_metrics_query_instructions_tool` — metrics |
| uptime_acknowledge_incident_tool | Acknowledge an ongoing incident |
| uptime_create_incident_comment_tool | Create a comment on an incident |
| uptime_create_incident_tool | Create a new incident providing a summary of the issue, requester email, and other optional details |
| uptime_escalate_incident_tool | Escalate an ongoing incident to a user, team, schedule, or policy |
| uptime_get_incident_comments_tool | Get comments for an incident |
| uptime_get_incident_tool | Get detailed information about a specific incident |
| uptime_get_incident_escalation_options_tool | Get available escalation options for an incident |
| uptime_get_incident_timeline_tool | Get the timeline of events for an incident |
| uptime_list_incidents_tool | List incidents with filtering and pagination options |
| uptime_resolve_incident_tool | Resolve an ongoing incident |
| uptime_get_escalation_policy_tool | Get detailed information about a specific escalation policy |
| uptime_get_severity_tool | Get detailed information about a specific severity (urgency level) |
| uptime_list_escalation_policies_tool | List all escalation policies with their steps and configuration |
| uptime_list_severities_tool | List all severities (urgency levels) with their notification settings |
| uptime_get_monitor_availability_tool | Get availability (SLA) summary for a specific monitor |
| uptime_get_monitor_tool | Get details of a specific monitor |
| uptime_get_monitor_response_times_tool | Get response time metrics for a specific monitor |
| uptime_list_monitors_tool | List monitors with optional filtering and pagination |
| uptime_get_heartbeat_availability_tool | Get availability summary for a specific heartbeat |
| uptime_get_heartbeat_tool | Get details of a specific heartbeat |
| uptime_list_heartbeats_tool | List all heartbeats with filtering and pagination options |
| uptime_get_on_call_tool | Get detailed information about a specific on-call calendar or the default calendar |
| uptime_get_on_call_event_tool | Get detailed information about a specific on-call event |
| uptime_get_on_call_rotation_tool | Get on-call rotation configuration for a specific calendar |
| uptime_list_on_call_events_tool | List all on-call schedule events for a specific calendar |
| uptime_list_on_calls_tool | List all on-call calendars for the team |
| uptime_create_status_page_report_tool | Create a new status page report |
| uptime_create_status_page_report_update_tool | Create a new status update for an existing status page report |
| uptime_get_status_page_tool | Get details of a specific status page |
| uptime_get_status_page_resources_tool | Get resources (monitors/heartbeats) for a specific status page |
| uptime_get_status_page_report_update_tool | Get details of a specific status page report update |
| uptime_list_status_page_reports_tool | List status reports (incidents/maintenance) for a specific status page |
| uptime_list_status_pages_tool | List all status pages with filtering and pagination options |
| uptime_list_status_page_report_updates_tool | List status updates for a specific status report |
| telemetry_add_chart_to_dashboard_tool | Add a new chart to a dashboard. Use the `section` parameter to organize charts into named sections — sections are auto-created if they don't exist, and charts are auto-positioned within them. **IMPORTANT: Follow this workflow:** 1) Call get_chart_building_instructions first for chart type, unit, and settings reference. 2) If you haven't already verified the query by previewing with `telemetry_chart` (which runs the query and reports errors automatically), test it with `telemetry_query` first. The SQL query should use variables like {{source}}, {{start_time}}, {{end_time}}, and {{time}} for proper integration with dashboard filters |
| telemetry_add_dashboard_section_tool | Add a section divider to a dashboard. Sections span the full width and help organize charts into groups. Charts and sections at or below the insertion point are shifted down to make room |
| telemetry_build_explore_query_tool | Generates a ClickHouse SQL query from natural language for exploring logs and spans data in Better Stack. The query is specifically formatted for use in the Better Stack Explore page UI. **Note**: The generated query uses Better Stack's query syntax and will not work directly in raw ClickHouse. |
| telemetry_build_metric_query_tool | Generates a ClickHouse SQL query from natural language for creating metrics visualizations in Better Stack Dashboards. Returns a query optimized for charts and dashboards that can be directly used in the Dashboard builder UI. **Note**: The generated query uses Better Stack's query syntax and will not work directly in raw ClickHouse. |
| telemetry_create_application_tool | Create a new application in Better Stack. Returns the created application details including ID, ingestion token, ingesting host URL, retention settings, and platform-specific integration documentation links with next steps for configuration |
| telemetry_create_cloud_connection_tool | Create a secure cloud connection for direct ClickHouse query access to logs, spans, and metrics data. Returns connection credentials (host, port, username, password), sample queries for each data type, and cURL command examples. Connections expire after 1 hour by default |
| telemetry_create_dashboard_tool | Create a new dashboard. Optionally use a template to start with pre-configured charts. Call get_chart_building_instructions for guidance on dashboard structure and layout. Optionally specify a source_id to preconfigure the dashboard with that source. Returns the new dashboard ID which can be used with add_chart_to_dashboard to add charts |
| telemetry_create_source_tool | Create a new log source in Better Stack. Returns the created source details including ID, ingestion token, ingesting host URL, retention settings, and platform-specific integration documentation links with next steps for configuration |
| telemetry_edit_chart_tool | Edit an existing chart name, query, type, or settings. Only provide the fields you want to change. **IMPORTANT: If changing the query:** If you haven't already verified the new query by previewing with `telemetry_chart` (which runs the query and reports errors automatically), test it with `telemetry_query` first before updating the chart. Call get_chart_building_instructions for chart type and settings reference. Use get_dashboard_details first to find the chart ID |
| telemetry_export_dashboard_tool | Export a dashboard configuration as JSON. Returns the complete dashboard data structure including charts, sections, presets, and settings |
| telemetry_get_application_details_tool | Get comprehensive details of a specific application including its configuration, retention settings, ingestion details, custom bucket settings (if configured) |
| telemetry_get_chart_building_instructions_tool | Get comprehensive instructions for building charts and dashboards, including chart types, units, axis settings, column mapping, legend placement, layout tips, and common mistakes. Call this before creating or editing charts |
| telemetry_get_chart_details_tool | Get detailed information about a specific chart including its SQL queries, configuration, and settings. Use get_dashboard_details first to find the chart ID |
| telemetry_get_dashboard_details_tool | Get detailed information about a specific dashboard including its charts, sections, layout, and configuration. Use this to understand a dashboard structure before modifying it |
| telemetry_get_error_details_tool | Get comprehensive details of a specific error including its type, message, call site information, first occurrence, and current state (unhandled, unresolved, ignored, resolved, or reoccurred) |
| telemetry_get_errors_query_instructions_tool | Get comprehensive instructions for building SQL ClickHouse queries for error tracking, including both error patterns (metrics) and individual exceptions. Explains when to use each source and provides examples for common use cases |
| telemetry_get_metric_details_tool | Get comprehensive details about a specific metric. Returns metric overview (data points, active series, available aggregations), definition (SQL expression or JSON path), example queries for different aggregation functions, and Prometheus tags (for pure metrics). Essential for understanding how to query and use a metric |
| telemetry_get_metric_query_instructions_tool | Get instructions for building SQL ClickHouse queries for metrics, including available metrics, aggregations, and examples |
| telemetry_get_metrics_and_cardinality_tool | Get complete metrics and cardinality for a source. Returns a table of all available metrics (pure and computed) with their names, types, data points count, and active series count |
| telemetry_get_query_instructions_tool | Get instruction for building SQL ClickHouse queries, including fields, aggregations, and examples, that can be used for running queries using direct connections to the ClickHouse proxy |
| telemetry_get_replays_query_instructions_tool | Get comprehensive instructions for building SQL ClickHouse queries for session replays. Explains data structure, provides examples for listing replays, finding replays linked to errors, and filtering by user/environment |
| telemetry_get_source_details_tool | Get comprehensive details of a specific source including its configuration, retention settings, ingestion details, custom bucket settings (if configured) |
| telemetry_get_source_fields_tool | Get complete field catalog for a logs or spans source. Returns a table of all queryable fields with their paths and data types. Essential for understanding what fields can be queried for building custom queries |
| telemetry_import_dashboard_tool | Import a dashboard from JSON configuration. Creates a new dashboard with the provided data structure |