Skip to main content
Glama
MSPbotsAI

logicmonitor-mcp

by MSPbotsAI

logicmonitor-mcp

LogicMonitor MCP-Server – stellt die LogicMonitor REST API (v3, /santaba/rest) als MCP-Tools bereit.

Überblick

Dieser Server implementiert das Model Context Protocol (Streamable HTTP/SSE-Transport) und kapselt die LogicMonitor-Endpunkte, die von der eigenen LogicMonitor-Integration von MSPbots verwendet werden. Er folgt der Vendor-MCP-Service-SOP von MSPbots: zustandslos, keine gespeicherten Anmeldedaten, Authentifizierung pro Anfrage über Header.

Die zugrunde liegende API authentifiziert über LMv1 – eine pro Anfrage berechnete HMAC-SHA256-Signatur aus einem Access-Id-/Access-Key-Paar (das gleiche Schema, das MSPbots selbst für diese Integration verwendet: Company + Access Id + Access Key, kein OAuth). Dieser Server berechnet die LMv1-Signatur selbst für jede ausgehende Anfrage aus den in den Headern dieser Anfrage übermittelten Anmeldedaten; er speichert sie niemals.

Related MCP server: databricks-mcp

Schnellstart

Docker (empfohlen)

docker compose up --build

Der Server startet auf http://localhost:8080.

Lokal (uv)

uv sync
python -m logicmonitor_mcp

Health Check

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

Für den Health-Endpunkt sind keine Anmeldedaten erforderlich.

Authentifizierung

Jede Anfrage an /mcp muss die folgenden HTTP-Header enthalten:

Header

Typ

Erforderlich

Standardwert

Enum-Werte

Feldbeschreibung

Beispiel

X-LogicMonitor-Company

string

Ja

Keiner

Keine (Freitext)

LogicMonitor-Portal-Subdomain, d. h. der Teil {company} in https://{company}.logicmonitor.com, der auch Teil der Basis-URL im Signaturalgorithmus ist.

X-LogicMonitor-Company: acme

X-LogicMonitor-Access-Id

string

Ja

Keiner

Keine (Freitext)

Access Id des LMv1-API-Tokens, identisch mit dem Feld „Access Id“ in der MSPbots-Integrationskonfiguration.

X-LogicMonitor-Access-Id: abcd1234efgh5678

X-LogicMonitor-Access-Key

string

Ja

Keiner

Keine (Freitext, sensibel)

Access Key (geheimer Schlüssel) des LMv1-API-Tokens, verwendet zur HMAC-SHA256-Signierung jeder Anfrage; dieser Dienst verwendet ihn nur während der Lebensdauer der jeweiligen Anfrage und speichert ihn nicht dauerhaft.

X-LogicMonitor-Access-Key: <access_key>

Fehlt einer der drei Header, wird 401 Unauthorized zurückgegeben.

Umgebungsvariablen

Variable

Standard

Beschreibung

MCP_HTTP_PORT

8080

Listening-Port

MCP_HTTP_HOST

0.0.0.0

Listening-Host

logicmonitor-mcp hat keine erforderlichen Umgebungsvariablen – alle Identitätsdaten (Company/Access Id/Access Key) werden pro Anfrage über Header übermittelt.

MCP-Endpunkt

POST http://localhost:8080/mcp

Verbinden Sie Ihren MCP-Client mit:

  • Transport: http (Streamable HTTP / SSE)

  • Header: X-LogicMonitor-Company, X-LogicMonitor-Access-Id, X-LogicMonitor-Access-Key (alle erforderlich)

Tool-Liste

15 Tools – entsprechend den 15 LogicMonitor-API-Endpunkten, die bereits unter dieser Integration in MSPbots registriert sind (sys_integration subject_code LOGICMONITOR), sodass die Tool-Abdeckung mit dem bestehenden Umfang von MSPbots übereinstimmt. Alle Tools sind schreibgeschützt (readOnlyHint=True); es gibt keine Schreib-/Lösch-Tools in diesem Dienst.

Paginierung: size hat standardmäßig 50 und wird serverseitig auf ein hartes Maximum von 1000 begrenzt – LogicMonitors eigenes dokumentiertes/erzwungenes Maximum für diesen Parameter (Werte über 1000 werden von LogicMonitor selbst stillschweigend begrenzt; eine höhere Anfrage führt nie zu einem Fehler, sondern liefert höchstens 1000 Ergebnisse). Unabhängig davon ist jede einzelne Tool-Antwort auf 20.000 Zeichen begrenzt – wenn eine Ergebnisseite dies überschreiten würde, wird die Antwort mit den Feldern truncated/original_count abgeschnitten, anstatt vollständig zurückgegeben zu werden.

Geräte (3)

Tool

Funktion

Parameter

logicmonitor_get_devices

Monitoring-Geräte auflisten

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

logicmonitor_get_device_groups

Gerätegruppen auflisten

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

logicmonitor_get_device_properties

Benutzerdefinierte/Systemeigenschaften eines Geräts abfragen

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

Geräte-DataSources (4)

Tool

Funktion

Parameter

logicmonitor_get_device_datasources

Auf dem Gerät angewendete DataSources auflisten

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

logicmonitor_get_device_datasource_instances

Instanzen einer DataSource auf einem Gerät auflisten

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

logicmonitor_get_device_datasource_data

Von der DataSource erfasste Datenpunkte abrufen

device_id, source_id, start?, end?

logicmonitor_get_device_datasource_instance_alertsettings

Alarm-Schwellenwerte/Überschreibungen einer DataSource-Instanz abfragen

device_id, source_id, instance_id

Alarme (3)

Tool

Funktion

Parameter

logicmonitor_get_alerts

Aktive/verlaufene Alarme auflisten

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

logicmonitor_get_alert_detail

Details eines einzelnen Alarms abfragen

alert_id

logicmonitor_get_alert_rules

Alarm-Eskalationsregeln auflisten

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

Verwaltung (2)

Tool

Funktion

Parameter

logicmonitor_get_users

Portal-Benutzer (Admin) auflisten

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

logicmonitor_get_roles

Rollen (Berechtigungssätze) auflisten

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

Berichte (2)

Tool

Funktion

Parameter

logicmonitor_get_reports

Berichte auflisten

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

logicmonitor_get_report_groups

Berichtsgruppen auflisten

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

SDT (1)

Tool

Funktion

Parameter

logicmonitor_get_sdts

Geplante Ausfallzeiten (Scheduled Down Time) auflisten

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

Fehlerbehandlung

Tool-Fehler werden als JSON-String zurückgegeben (keine Ausnahme auf Protokollebene), sodass ein Agent programmatisch darauf verzweigen kann:

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

code gehört zu einem festen Vokabular: not_configured, unauthorized, not_found, invalid_argument, rate_limited, upstream_error. retryable gibt an, ob derselbe Aufruf sicher wiederholt werden kann (true für rate_limited/upstream_error, sonst false).

Netzwerk-Robustheit

  • Ausgehende Timeouts: Verbindung 5s / Lesen 30s / Schreiben 10s / Pool 5s.

  • Begrenzte Wiederholungen (bis zu 3 Versuche) mit begrenztem exponentiellem Backoff bei 429/5xx, wobei Retry-After berücksichtigt wird, falls vorhanden.

  • Jeder Wiederholungsversuch berechnet die LMv1-Signatur von Grund auf neu (sie enthält die aktuelle Epochenzeit), sodass eine wiederholte Anfrage niemals mit einer veralteten/abgelaufenen Signatur gesendet wird.

  • Ein einzelner gemeinsamer httpx.AsyncClient-Verbindungspool wird für die Prozesslebensdauer wiederverwendet.

Testbeispiel

Geräte auflisten:

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

Entsprechendes curl gegen den laufenden Server (Streamable-HTTP-MCP-Endpunkt):

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 } }
  }'

Ein parametrisierter Aufruf:

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

API-Referenz

Bekannte Lücken / Noch nicht verifiziert

  • Noch nicht gegen ein Live-LogicMonitor-Portal getestet – bisher nur Protokollebene-Verifizierung (Health Check, 401 bei fehlenden/teilweisen Headern, tools/list mit allen 15 Tools, unit-getestete Fehlercode-Zuordnung).

  • Die Tool-Abdeckung entspricht absichtlich den 15 bestehenden registrierten LogicMonitor-API-Einträgen von MSPbots und nicht der vollständigen LogicMonitor-REST-API-Oberfläche (die zusätzlich Schreiboperationen, Dashboards, Websites, Collector und LogicModules abdeckt) – auf Anfrage erweiterbar, falls eine breitere Abdeckung benötigt wird.

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