Skip to main content
Glama
MSPbotsAI

logicmonitor-mcp

by MSPbotsAI

logicmonitor-mcp

LogicMonitor MCP-сервер — предоставляет REST API LogicMonitor (v3, /santaba/rest) в виде MCP-инструментов.

Обзор

Этот сервер реализует Model Context Protocol (транспорт Streamable HTTP/SSE) и оборачивает конечные точки LogicMonitor, используемые собственной интеграцией LogicMonitor от MSPbots. Он следует Vendor MCP Service SOP от MSPbots: без сохранения состояния, без хранения учетных данных, аутентификация через заголовки каждого запроса.

Базовый API аутентифицируется через LMv1 — подпись HMAC-SHA256 для каждого запроса, вычисляемая из пары Access Id / Access Key (та же схема, которую MSPbots использует для этой интеграции: Company + Access Id + Access Key, без OAuth). Этот сервер сам вычисляет подпись LMv1 для каждого исходящего запроса из учетных данных, переданных в заголовках этого запроса; он никогда не сохраняет их.

Related MCP server: databricks-mcp

Быстрый старт

Docker (рекомендуется)

docker compose up --build

Сервер запускается на http://localhost:8080.

Локально (uv)

uv sync
python -m logicmonitor_mcp

Проверка работоспособности

curl http://localhost:8080/health
# {"status": "ok"}

Для конечной точки проверки работоспособности учетные данные не требуются.

Параметры авторизации (Аутентификация)

Каждый запрос к /mcp должен включать следующие HTTP-заголовки:

Заголовок

Тип

Обязателен

Значение по умолчанию

Допустимые значения

Описание поля

Пример

X-LogicMonitor-Company

string

Обязателен

Нет

Нет (произвольный текст)

Поддомен портала LogicMonitor, то есть часть {company} в https://{company}.logicmonitor.com, а также часть базового URL в алгоритме подписи.

X-LogicMonitor-Company: acme

X-LogicMonitor-Access-Id

string

Обязателен

Нет

Нет (произвольный текст)

Access Id токена API LMv1, соответствует полю «Access Id» в конфигурации интеграции MSPbots.

X-LogicMonitor-Access-Id: abcd1234efgh5678

X-LogicMonitor-Access-Key

string

Обязателен

Нет

Нет (произвольный текст, конфиденциальная информация)

Access Key (секрет) токена API LMv1, используется для подписи HMAC-SHA256 каждого запроса. Этот сервис использует его только в течение жизненного цикла текущего запроса и не сохраняет его.

X-LogicMonitor-Access-Key: <access_key>

Отсутствие любого из трех заголовков возвращает 401 Unauthorized.

Переменные окружения

Переменная

По умолчанию

Описание

MCP_HTTP_PORT

8080

Порт прослушивания

MCP_HTTP_HOST

0.0.0.0

Хост прослушивания

logicmonitor-mcp не требует обязательных переменных окружения — все идентификационные данные (company/access id/access key) передаются в каждом запросе через заголовки.

Конечная точка MCP

POST http://localhost:8080/mcp

Подключите ваш MCP-клиент с помощью:

  • Транспорт: http (Streamable HTTP / SSE)

  • Заголовки: X-LogicMonitor-Company, X-LogicMonitor-Access-Id, X-LogicMonitor-Access-Key (все обязательны)

Список инструментов

15 инструментов — соответствуют 15 конечным точкам API LogicMonitor, уже зарегистрированным в этой интеграции в MSPbots (sys_integration subject_code LOGICMONITOR), поэтому покрытие инструментов согласовано с существующей областью MSPbots. Все инструменты доступны только для чтения (readOnlyHint=True); в этом сервисе нет инструментов записи/удаления.

Пагинация: size по умолчанию равен 50 и на стороне сервера ограничен жестким максимумом 1000 — это документированный/принудительный максимум LogicMonitor для этого параметра (значения выше 1000 молча ограничиваются самим LogicMonitor; запрос большего количества не вызывает ошибок, просто возвращается не более 1000). Независимо от этого, любой ответ одного инструмента ограничен 20 000 символов — если страница результатов превышает это значение, ответ усекается с полями truncated/original_count, а не возвращается полностью.

Устройства (3)

Инструмент

Функция

Параметры

logicmonitor_get_devices

Список контролируемых устройств

size=50 (max 1000), offset=0, sort?, filter?, fields?

logicmonitor_get_device_groups

Список групп устройств

size=50 (max 1000), offset=0, sort?, filter?, fields?

logicmonitor_get_device_properties

Получить пользовательские/системные свойства устройства

device_id, size=50 (max 1000), offset=0, filter?

DataSource устройств (4)

Инструмент

Функция

Параметры

logicmonitor_get_device_datasources

Список DataSource, примененных к устройству

device_id, size=50 (max 1000), offset=0, filter?, fields?

logicmonitor_get_device_datasource_instances

Список экземпляров DataSource на устройстве

device_id, source_id, size=50 (max 1000), offset=0, filter?

logicmonitor_get_device_datasource_data

Получить точки данных, собранные DataSource

device_id, source_id, start?, end?

logicmonitor_get_device_datasource_instance_alertsettings

Получить пороги/настройки оповещений для экземпляра DataSource

device_id, source_id, instance_id

Оповещения (3)

Инструмент

Функция

Параметры

logicmonitor_get_alerts

Список активных/исторических оповещений

size=50 (max 1000), offset=0, sort?, filter?, fields?

logicmonitor_get_alert_detail

Получить детали одного оповещения

alert_id

logicmonitor_get_alert_rules

Список правил эскалации оповещений

size=50 (max 1000), offset=0, filter?

Администрирование (2)

Инструмент

Функция

Параметры

logicmonitor_get_users

Список учетных записей пользователей портала (admin)

size=50 (max 1000), offset=0, filter?, fields?

logicmonitor_get_roles

Список ролей (наборов прав)

size=50 (max 1000), offset=0, filter?

Отчеты (2)

Инструмент

Функция

Параметры

logicmonitor_get_reports

Список отчетов

size=50 (max 1000), offset=0, filter?, fields?

logicmonitor_get_report_groups

Список групп отчетов

size=50 (max 1000), offset=0, filter?

SDT (1)

Инструмент

Функция

Параметры

logicmonitor_get_sdts

Список записей планового простоя (Scheduled Down Time)

size=50 (max 1000), offset=0, filter?

Обработка ошибок

Ошибки инструментов возвращаются в виде JSON-строки (а не исключения на уровне протокола), поэтому агент может программно обрабатывать их.

{"error": {"code": "upstream_error", "message": "...", "retryable": true}}

code — одно из фиксированного набора значений: not_configured, unauthorized, not_found, invalid_argument, rate_limited, upstream_error. retryable указывает, безопасно ли повторять тот же вызов (true для rate_limited/upstream_error, false в остальных случаях).

Устойчивость сети

  • Исходящие тайм-ауты: подключение 5 с / чтение 30 с / запись 10 с / пул 5 с.

  • Ограниченные повторные попытки (до 3 попыток) с ограниченной экспоненциальной задержкой при 429/5xx, с учетом Retry-After, если он присутствует.

  • Каждая повторная попытка заново вычисляет подпись LMv1 с нуля (она включает текущую эпоху), поэтому повторный запрос никогда не отправляется с устаревшей/просроченной подписью.

  • Один общий пул соединений httpx.AsyncClient используется на протяжении всего времени жизни процесса.

Пример тестирования (Пример теста)

Список устройств:

{
  "method": "tools/call",
  "params": { "name": "logicmonitor_get_devices", "arguments": { "size": 10 } }
}

Эквивалентный curl к запущенному серверу (конечная точка MCP со streamable HTTP):

curl -X POST http://localhost:8080/mcp \
  -H "Content-Type: application/json" \
  -H "X-LogicMonitor-Company: <company>" \
  -H "X-LogicMonitor-Access-Id: <access_id>" \
  -H "X-LogicMonitor-Access-Key: <access_key>" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/call",
    "params": { "name": "logicmonitor_get_devices", "arguments": { "size": 10 } }
  }'

Параметризованный вызов:

{
  "method": "tools/call",
  "params": {
    "name": "logicmonitor_get_device_datasources",
    "arguments": { "device_id": "7186" }
  }
}

Справочник API

  • Официальная документация: LogicMonitor REST API v3

  • Схема аутентификации: LMv1 API Tokens

  • Шаблон базового URL: https://{company}.logicmonitor.com/santaba/rest

Известные пробелы / Еще не проверено

  • Еще не протестировано на живом портале LogicMonitor — пока выполнена только проверка на уровне протокола (проверка работоспособности, 401 при отсутствующих/частичных заголовках, tools/list возвращает все 15 инструментов, модульное тестирование сопоставления кодов ошибок).

  • Покрытие инструментов намеренно соответствует существующим 15 зарегистрированным записям API LogicMonitor в MSPbots, а не полной поверхности LogicMonitor REST API (которая дополнительно охватывает операции записи, панели мониторинга, веб-сайты, коллекторы и LogicModules) — расширяется по запросу, если требуется более широкое покрытие.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    MCP server for the FortiMonitor v2 monitoring API. 241 tools across 33 modules covering server management, outage monitoring, maintenance windows, metrics, notifications, cloud monitoring, SNMP, dashboards, reporting, and more. Unofficial community project, not affiliated with Fortinet. Python, MIT license, Docker and local deployment supported.
    3
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Exposes the ConnectWise Command (Continuum) ITSupport247 Reporting API as MCP tools, enabling querying of sites, devices, patches, antivirus, performance, and more.
    Apache 2.0

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/MSPbotsAI/logicmonitor-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server