logicmonitor-mcp
logicmonitor-mcp
LogicMonitor MCP server: expone la API REST de LogicMonitor (v3, /santaba/rest) como herramientas MCP.
Descripción general
Este servidor implementa el Model Context Protocol (transporte Streamable HTTP/SSE) y envuelve los endpoints de LogicMonitor utilizados por la propia integración de LogicMonitor de MSPbots. Sigue el SOP de Servicio MCP de Proveedores de MSPbots: sin estado, sin credenciales almacenadas, autenticación por cabecera en cada solicitud.
La API subyacente se autentica mediante LMv1 — una firma HMAC-SHA256 por solicitud calculada a partir de un par Access Id / Access Key (el mismo esquema que MSPbots usa para esta integración: Company + Access Id + Access Key, sin OAuth). Este servidor calcula la firma LMv1 por sí mismo para cada solicitud saliente a partir de las credenciales suministradas en las cabeceras de esa solicitud; nunca las persiste.
Related MCP server: databricks-mcp
Inicio rápido
Docker (recomendado)
docker compose up --buildEl servidor se inicia en http://localhost:8080.
Local (uv)
uv sync
python -m logicmonitor_mcpComprobación de salud
curl http://localhost:8080/health
# {"status": "ok"}No se requieren credenciales para el endpoint de salud.
Parámetros de autenticación
Cada solicitud a /mcp debe incluir las siguientes cabeceras HTTP:
Cabecera | Tipo | Obligatorio | Valor por defecto | Valores posibles | Descripción | Ejemplo |
| string | Sí | Ninguno | Ninguno (texto libre) | Subdominio del portal de LogicMonitor, es decir, la parte |
|
| string | Sí | Ninguno | Ninguno (texto libre) | Access Id del token de API LMv1, coincide con el campo "Access Id" en la configuración de integración de MSPbots. |
|
| string | Sí | Ninguno | Ninguno (texto libre, información sensible) | Access Key (secreto) del token de API LMv1, se usa para firmar cada solicitud con HMAC-SHA256; este servicio solo lo usa durante el ciclo de vida de la solicitud, no lo almacena. |
|
Si falta cualquiera de las tres cabeceras, se devuelve 401 Unauthorized.
Variables de entorno
Variable | Valor por defecto | Descripción |
|
| Puerto de escucha |
|
| Host de escucha |
logicmonitor-mcp no tiene variables de entorno obligatorias: toda la identidad (company/access id/access key) se envía por solicitud mediante cabeceras.
Endpoint MCP
POST http://localhost:8080/mcpConecta tu cliente MCP con:
Transporte:
http(Streamable HTTP / SSE)Cabeceras:
X-LogicMonitor-Company,X-LogicMonitor-Access-Id,X-LogicMonitor-Access-Key(todas obligatorias)
Lista de herramientas
15 herramientas — que coinciden con los 15 endpoints de la API de LogicMonitor ya registrados en esta integración en MSPbots (sys_integration subject_code LOGICMONITOR), de modo que la cobertura de herramientas es coherente con el alcance existente de MSPbots. Todas las herramientas son de solo lectura (readOnlyHint=True); no hay herramientas de escritura/eliminación en este servicio.
Paginación: size tiene un valor predeterminado de 50 y se limita en el servidor a un máximo estricto de 1000 — el máximo documentado/aplicado por LogicMonitor para este parámetro (los valores superiores a 1000 se limitan silenciosamente por LogicMonitor; solicitar más nunca genera error, solo devuelve como máximo 1000). Independientemente de eso, cualquier respuesta de una herramienta está limitada a 20 000 caracteres; si una página de resultados lo excediera, la respuesta se trunca con los campos truncated/original_count en lugar de devolverse completa.
Dispositivos (3)
Herramienta | Función | Parámetros |
| Listar dispositivos monitoreados |
|
| Listar grupos de dispositivos |
|
| Consultar propiedades personalizadas/sistema de un dispositivo |
|
DataSources de dispositivos (4)
Herramienta | Función | Parámetros |
| Listar DataSources aplicados a un dispositivo |
|
| Listar instancias de un DataSource en un dispositivo |
|
| Obtener puntos de datos recopilados por un DataSource |
|
| Consultar umbrales de alerta/ajustes de cobertura de una instancia de DataSource |
|
Alertas (3)
Herramienta | Función | Parámetros |
| Listar alertas activas/históricas |
|
| Consultar detalle de una alerta |
|
| Listar reglas de escalado de alertas |
|
Administración (2)
Herramienta | Función | Parámetros |
| Listar cuentas de usuario (admin) del portal |
|
| Listar roles (conjuntos de permisos) |
|
Informes (2)
Herramienta | Función | Parámetros |
| Listar informes |
|
| Listar grupos de informes |
|
SDT (1)
Herramienta | Función | Parámetros |
| Listar entradas de tiempo de inactividad programado (Scheduled Down Time) |
|
Manejo de errores
Los errores de las herramientas se devuelven como una cadena JSON (no como una excepción a nivel de protocolo), de modo que un Agente pueda tomar decisiones programáticamente:
{"error": {"code": "upstream_error", "message": "...", "retryable": true}}code es uno de un vocabulario fijo: not_configured, unauthorized, not_found, invalid_argument, rate_limited, upstream_error. retryable indica si la misma llamada es segura de reintentar (true para rate_limited/upstream_error, false en caso contrario).
Robustez de red
Tiempos de espera de salida: conexión 5s / lectura 30s / escritura 10s / pool 5s.
Reintentos limitados (hasta 3 intentos) con retroceso exponencial limitado en
429/5xx, respetandoRetry-Aftercuando está presente.Cada intento de reintento recalcula la firma LMv1 desde cero (incluye la época actual), por lo que una solicitud reintentada nunca se envía con una firma obsoleta/expirada.
Se reutiliza un único pool de conexiones
httpx.AsyncClientcompartido durante toda la vida del proceso.
Ejemplo de prueba
Listar dispositivos:
{
"method": "tools/call",
"params": { "name": "logicmonitor_get_devices", "arguments": { "size": 10 } }
}curl equivalente contra el servidor en ejecución (endpoint MCP HTTP streamable):
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 } }
}'Una llamada parametrizada:
{
"method": "tools/call",
"params": {
"name": "logicmonitor_get_device_datasources",
"arguments": { "device_id": "7186" }
}
}Referencia de API
Documentación oficial: LogicMonitor REST API v3
Esquema de autenticación: LMv1 API Tokens
Patrón de URL base:
https://{company}.logicmonitor.com/santaba/rest
Brechas conocidas / No verificado aún
Aún no se ha probado contra un portal de LogicMonitor en vivo; solo se ha realizado verificación a nivel de protocolo (comprobación de salud, 401 con cabeceras faltantes/parciales,
tools/listque devuelve las 15 herramientas, mapeo de códigos de error probado con unit tests).La cobertura de herramientas coincide intencionalmente con las 15 entradas de API de LogicMonitor existentes en MSPbots, en lugar de la superficie completa de la API REST de LogicMonitor (que además cubre operaciones de escritura, paneles, sitios web, coleccionistas y LogicModules); se puede ampliar si se necesita una cobertura más amplia.
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.
This server cannot be installed
Maintenance
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
Remote MCP for 1,500+ APIs. Vault-managed credentials; OAuth or API key. Search, load, and execute.
Governed MCP gateway: one endpoint for your tools, with credential custody and audit log.
- OneOAuthai.withone
Search, document and execute authenticated API calls across 700+ apps via one MCP server
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceMCP 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.3MIT
- AlicenseBqualityCmaintenanceExposes Databricks REST APIs as MCP tools for managing and querying a Databricks workspace, including clusters, jobs, SQL, Unity Catalog, and more.100MIT
- AlicenseBqualityCmaintenanceExposes N-able N-central REST API as MCP tools for managing devices, organizations, users, and more, with support for read-only, write, and full write modes.825MIT
- AlicenseNot gradedqualityBmaintenanceExposes 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
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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