Pulsetic MCP Server
официальныйСервер Pulsetic MCP подключает мониторинг Pulsetic к AI-агентам и инструментам, совместимым с MCP, обеспечивая прямой доступ к данным о времени безотказной работы, результатам мониторинга cron, рабочим процессам управления инцидентами и информации о странице статуса через протокол Model Context Protocol (MCP). Он позволяет командам безопасно предоставлять операционные данные мониторинга в структурированном формате, что упрощает создание автоматизации на основе ИИ, ассистентов мониторинга и интеллектуальных операционных рабочих процессов без использования пользовательского промежуточного ПО.
Что можно делать с Pulsetic MCP?
- Проверка статуса и времени работы монитора — Запросите все мониторы с помощью
list_monitorsили получите подробную статистику для конкретного монитора черезget_monitor_stats. - Расследование событий простоя — Получите события подключения/отключения с помощью
get_monitor_eventsили общее количество секунд простоя черезget_monitor_downtime. - Создание и управление мониторами — Добавьте новые HTTP-, TCP- или ICMP-мониторы с помощью
create_monitor, обновите настройки черезupdate_monitorили приостановите/возобновите проверки. - Обработка инцидентов на страницах статуса — Используйте
create_incident,update_incidentиresolve_incidentдля управления жизненным циклом инцидентов и публикации обновлений статуса. - Планирование окон обслуживания — Создайте предстоящие периоды обслуживания с помощью
create_maintenanceили удалите их черезdelete_maintenance.
Документация
Pulsetic MCP Server
Подключите AI-ассистентов к вашей платформе мониторинга Pulsetic с помощью Model Context Protocol (MCP).
Что такое MCP?
Model Context Protocol — это открытый стандарт, позволяющий AI-ассистентам взаимодействовать с внешними инструментами и сервисами. С MCP-сервером Pulsetic вы можете попросить своего AI-ассистента проверить статус мониторов, создать инциденты, запланировать техническое обслуживание и многое другое — и всё это в формате обычного разговора.
Поддерживаемые клиенты:
- Claude Desktop — десктопное приложение Anthropic
- Claude Code — CLI для разработчиков от Anthropic
- ChatGPT — AI-ассистент OpenAI (через OAuth)
- Cursor — редактор кода с AI-возможностями
- Windsurf — IDE с AI-возможностями
- Любой клиент, реализующий спецификацию MCP
Предварительные требования
- Аккаунт Pulsetic на тарифе с доступом к API (Business или Enterprise).
- API-ключ Pulsetic — создайте его в разделе Настройки → API вашей панели управления.
- AI-клиент, совместимый с MCP.
Настройка
Claude Desktop
Claude Desktop использует MCP-серверы на основе stdio. Используйте mcp-remote для соединения с удалённой HTTP-точкой. Откройте Настройки → Разработчик → Редактировать конфигурацию и добавьте:
{
"mcpServers": {
"pulsetic": {
"command": "npx",
"args": [
"-y", "mcp-remote",
"https://api.pulsetic.com/mcp",
"--header", "Authorization: Bearer YOUR_API_KEY"
]
}
}
}
Замените YOUR_API_KEY на ваш реальный API-ключ. Перезапустите Claude Desktop, чтобы применить изменения.
Claude Code
Добавьте сервер в файл .mcp.json вашего проекта:
{
"mcpServers": {
"pulsetic": {
"type": "streamableHttp",
"url": "https://api.pulsetic.com/mcp",
"headers": {
"Authorization": "YOUR_API_KEY"
}
}
}
}
Cursor
Откройте Настройки → MCP-серверы → Добавить сервер и настройте:
- Тип: streamableHttp
- URL:
https://api.pulsetic.com/mcp - Заголовки:
Authorization: YOUR_API_KEY
ChatGPT
ChatGPT имеет встроенную поддержку MCP через Режим разработчика. Для аутентификации в Pulsetic используется OAuth.
Шаг 1. Включите Режим разработчика в ChatGPT: перейдите в Подключённые приложения → Расширенные настройки → Режим разработчика и включите его. Это доступно для пользователей ChatGPT Pro, Plus, Team, Business, Enterprise и Edu.
Шаг 2. Создайте новое приложение: перейдите в Подключённые приложения → Создать приложение.
Шаг 3. Заполните данные приложения:
| Поле | Значение |
|---|---|
| Название | Pulsetic MCP (или любое другое название) |
| Описание | Uptime monitoring (необязательно) |
| URL MCP-сервера | https://api.pulsetic.com/mcp |
| Аутентификация | OAuth |
Шаг 4. Конечные точки OAuth будут автоматически обнаружены с сервера. Вы можете проверить их в разделе Расширенные настройки:
| Поле | Значение |
|---|---|
| URL авторизации | https://api.pulsetic.com/mcp/oauth/authorize |
| URL токена | https://api.pulsetic.com/mcp/oauth/token |
| URL регистрации | https://api.pulsetic.com/mcp/oauth/register |
Шаг 5. Отметьте «Я понимаю и хочу продолжить» и нажмите Создать.
Шаг 6. Завершите процесс входа через OAuth. Вы будете перенаправлены на страницу авторизации Pulsetic, где нужно ввести email вашего аккаунта и API-токен.
Email должен совпадать с вашим API-токеном. На странице авторизации введённый email должен принадлежать владельцу предоставляемого API-токена.
Храните API-ключ в тайне. Ваш API-ключ даёт полный доступ к вашему аккаунту Pulsetic. Никогда не добавляйте его в систему контроля версий и не передавайте публично.
Доступные инструменты
MCP-сервер предоставляет 17 инструментов, разделённых на четыре категории.
Мониторы
| Инструмент | Описание |
|---|---|
list_monitors | Список всех мониторов со статусом, временем безотказной работы и временем отклика. |
get_monitor | Подробная информация о конкретном мониторе. |
get_monitor_stats | Процент безотказной работы, время простоя и время отклика за 1д/7д/30д/90д. |
get_monitor_events | События доступности/недоступности в заданном диапазоне дат. |
get_monitor_downtime | Общее время простоя в секундах за указанный период. |
create_monitor | Создать новый монитор HTTP, TCP или ICMP. |
update_monitor | Обновить имя, URL, частоту или настройки монитора. |
delete_monitor | Навсегда удалить монитор. |
pause_monitor | Приостановить мониторинг (остановить проверки). |
resume_monitor | Возобновить приостановленный монитор. |
Страницы статуса
| Инструмент | Описание |
|---|---|
list_status_pages | Список всех страниц статуса с заголовком, slug и доменом. |
Инциденты
| Инструмент | Описание |
|---|---|
list_incidents | Список инцидентов для страницы статуса. |
create_incident | Создать новый инцидент с начальным обновлением статуса. |
update_incident | Опубликовать обновление статуса для существующего инцидента. |
resolve_incident | Отметить инцидент как решённый. |
Техническое обслуживание
| Инструмент | Описание |
|---|---|
create_maintenance | Запланировать окно технического обслуживания на странице статуса. |
delete_maintenance | Удалить запланированное окно технического обслуживания. |
Примеры использования
После настройки вы можете взаимодействовать с Pulsetic на естественном языке.
Проверка мониторов
"Show me all my monitors and their current status."
"What's the uptime for my production API monitor over the last 30 days?"
"Are any of my monitors currently down?"
"Show me the downtime events for monitor 42 in the past week."
Управление мониторами
"Create a new monitor for https://api.example.com that checks every 30 seconds."
"Pause the staging monitor while we do the migration."
"Resume all paused monitors."
"Change the check frequency of monitor 15 to 60 seconds."
"Delete the old marketing-site monitor."
Обработка инцидентов
"Create an incident on our main status page: 'Elevated API latency'
with status investigating and message 'We're looking into slow response times.'"
"Update the API latency incident to identified: 'Root cause is a database
connection pool issue. Working on a fix.'"
"Resolve incident 8 with message 'Connection pool limits increased.
Response times back to normal.'"
Планирование технического обслуживания
"Schedule a maintenance window on status page 1 called 'Database upgrade'
starting 2025-03-20 at 2am UTC and ending at 4am UTC."
"Delete the maintenance window we scheduled for next week."
Тестирование с помощью cURL
Вы можете протестировать конечную точку MCP напрямую с помощью cURL, чтобы убедиться, что ваш API-ключ работает.
Инициализация
curl -X POST https://api.pulsetic.com/mcp \
-H "Authorization: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "initialize",
"params": {
"protocolVersion": "2025-03-26",
"capabilities": {},
"clientInfo": {"name": "curl", "version": "1.0"}
}
}'
Список инструментов
curl -X POST https://api.pulsetic.com/mcp \
-H "Authorization: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'
Вызов инструмента
curl -X POST https://api.pulsetic.com/mcp \
-H "Authorization: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 3,
"method": "tools/call",
"params": {
"name": "list_monitors",
"arguments": {}
}
}'
Справочник инструментов
list_monitors
Возвращает все мониторы вашего аккаунта.
Нет параметров.
get_monitor
Возвращает полную информацию об одном мониторе, включая данные SSL-сертификата.
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
monitor_id | integer | Да | ID монитора. |
get_monitor_stats
Возвращает процент безотказной работы, время простоя, количество инцидентов и среднее время отклика за периоды в 1 день, 7 дней, 30 дней и 90 дней.
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
monitor_id | integer | Да | ID монитора. |
get_monitor_events
Возвращает события доступности/недоступности в диапазоне дат (макс. 100, сначала новые).
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
monitor_id | integer | Да | ID монитора. |
from | string | Нет | Дата начала (ГГГГ-ММ-ДД). По умолчанию: 7 дней назад. |
to | string | Нет | Дата окончания (ГГГГ-ММ-ДД). По умолчанию: сегодня. |
get_monitor_downtime
Возвращает общее время простоя в секундах и количество инцидентов за период.
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
monitor_id | integer | Да | ID монитора. |
days | integer | Нет | Количество дней для анализа. По умолчанию: 30. |
create_monitor
Создаёт новый монитор доступности.
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
url | string | Да | URL или имя хоста для мониторинга. |
name | string | Нет | Отображаемое имя. |
request_type | string | Нет | http, tcp или icmp. По умолчанию: http. |
uptime_check_frequency | integer | Нет | Интервал проверки в секундах. По умолчанию: 60. |
request_method | string | Нет | HTTP-метод. По умолчанию: GET. |
request_timeout | integer | Нет | Тайм-аут в секундах. По умолчанию: 30. |
ssl_check | boolean | Нет | Включить мониторинг SSL. |
update_monitor
Обновляет настройки существующего монитора. Указывайте только те поля, которые хотите изменить.
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
monitor_id | integer | Да | ID монитора. |
name | string | Нет | Новое отображаемое имя. |
url | string | Нет | Новый URL или имя хоста. |
uptime_check_frequency | integer | Нет | Новый интервал проверки в секундах. |
request_method | string | Нет | HTTP-метод. |
request_timeout | integer | Нет | Тайм-аут в секундах. |
ssl_check | boolean | Нет | Включить/отключить мониторинг SSL. |
delete_monitor
Навсегда удаляет монитор и все связанные с ним данные.
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
monitor_id | integer | Да | ID монитора. |
pause_monitor
Приостанавливает монитор. Проверки будут остановлены до возобновления.
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
monitor_id | integer | Да | ID монитора. |
resume_monitor
Возобновляет приостановленный монитор.
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
monitor_id | integer | Да | ID монитора. |
list_status_pages
Возвращает все страницы статуса вашего аккаунта.
Нет параметров.
list_incidents
Возвращает инциденты для страницы статуса, включая последнее обновление для каждого.
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
status_page_id | integer | Да | ID страницы статуса. |
create_incident
Создаёт новый инцидент с начальным обновлением статуса, которое отображается на странице статуса.
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
status_page_id | integer | Да | ID страницы статуса. |
title | string | Да | Заголовок инцидента. |
status | string | Да | investigating, identified, monitoring или resolved. |
message | string | Да | Начальное сообщение обновления. |
update_incident
Публикует новое обновление статуса для существующего инцидента.
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
incident_id | integer | Да | ID инцидента. |
status | string | Да | investigating, identified, monitoring или resolved. |
message | string | Да | Сообщение обновления. |
title | string | Нет | Обновить заголовок инцидента. |
resolve_incident
Отмечает инцидент как решённый с сообщением о решении.
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
incident_id | integer | Да | ID инцидента. |
message | string | Да | Сообщение о решении. |
create_maintenance
Планирует окно технического обслуживания на странице статуса.
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
status_page_id | integer | Да | ID страницы статуса. |
name | string | Да | Заголовок технического обслуживания. |
description | string | Нет | Описание технического обслуживания. |
start | string | Да | Время начала в формате ISO 8601. |
end | string | Да | Время окончания в формате ISO 8601. |
timezone | string | Нет | Часовой пояс (например, UTC, America/New_York). По умолчанию: UTC. |
delete_maintenance
Удаляет запланированное окно технического обслуживания.
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
maintenance_id | integer | Да | ID окна технического обслуживания. |
Устранение неполадок
401 Unauthorized
- Убедитесь, что ваш API-ключ корректен и не истёк.
- Убедитесь, что вы передаёте ключ в заголовке
Authorization(как чистый токен или с префиксомBearer). - Убедитесь, что ваш аккаунт использует тариф с включённым доступом к API.
Ошибка авторизации OAuth (ChatGPT)
- На странице авторизации введённый email должен совпадать с владельцем API-токена.
- Убедитесь, что Режим разработчика включён в настройках ChatGPT.
- Убедитесь, что у вас тариф ChatGPT, поддерживающий Режим разработчика (Pro, Plus, Team, Business, Enterprise или Edu).
«Монитор не найден или доступ запрещён»
- ID монитора не существует или принадлежит другому аккаунту.
- Используйте
list_monitors, чтобы увидеть доступные ID мониторов.
Инструменты не отображаются в AI-клиенте
- Перезапустите AI-клиент после редактирования конфигурации MCP.
- Проверьте, что URL точно
https://api.pulsetic.com/mcp. - Проверьте конечную точку с помощью cURL, чтобы убедиться в соединении.
Ошибки протокола
- Убедитесь, что запросы используют
Content-Type: application/json. - Поле
jsonrpcдолжно быть точно"2.0". - Включайте поле
id(целое число или строка) для всех запросов, кроме уведомлений.
Справочник API
MCP-сервер реализует спецификацию MCP (2025-03-26) с использованием потоковой передачи HTTP через единую конечную точку POST /mcp с JSON-RPC 2.0.