Skip to main content
Glama
oaslananka

MCP Health Monitor

mcp-health-monitor

Überwachung des MCP-Serverstatus, Nachverfolgung der Betriebszeit, Status von Azure DevOps-Pipelines und Auswertung von Warnmeldungen durch natürlichsprachliche Tools.

npm version npm downloads License: MIT Node.js

Was dieses Tool bewirkt

mcp-health-monitor führt ein Verzeichnis der MCP-Server, die Sie überwachen möchten, führt echte MCP-Handshakes mit ihnen durch, zeichnet den Statusverlauf in SQLite auf und meldet Betriebszeit, Latenz und Warnschwellen über MCP-Tools zurück. Es verfolgt außerdem Azure DevOps-Pipelines, sodass der Status von Anwendungen und Bereitstellungen von derselben Stelle aus überprüft werden kann.

Schnellstart

Führen Sie den Monitor über stdio aus:

npx -y mcp-health-monitor

Beispiel für einen MCP-Eintrag in Claude Desktop oder VS Code:

{
  "name": "mcp-health-monitor",
  "version": "1.0.2",
  "mcpName": "io.github.oaslananka/mcp-health-monitor",
  "description": "Monitor MCP server health, uptime, response times, and Azure DevOps pipelines",
  "transport": "stdio",
  "command": "npx",
  "args": ["-y", "mcp-health-monitor"]
}

Referenz der Tools

Tool

Zweck

Typische Eingabe

register_server

Speichert einen MCP-Server zur Überwachung

Register https://example.com/mcp as prod-gateway

check_server

Führt eine Live-Statusprüfung für einen Server durch

Check prod-gateway now

check_all

Überprüft alle registrierten Server

Check all my MCP servers

get_uptime

Gibt Betriebszeit und Latenzstatistiken zurück

Show 24h uptime for prod-gateway

get_dashboard

Gibt JSON-Dashboard-Daten zurück

Give me a 24h dashboard

get_report

Gibt einen Markdown-Bericht zurück

Generate a Markdown health report for 24h

list_servers

Zeigt registrierte Server an

List all monitored servers

unregister_server

Entfernt einen Server

Stop monitoring local-debugger

set_alert

Konfiguriert Schwellenwerte

Alert if prod-gateway exceeds 500ms or drops below 99% uptime

get_monitor_stats

Zeigt Statistiken auf Monitorebene an

How many checks has the monitor recorded?

register_azure_pipelines

Registriert Azure-Pipeline-Gruppen

Track CI and Publish pipelines for my repo

check_pipeline_status

Liest die neuesten Azure-Pipeline-Ausführungen

Check pipeline status for my release group

get_pipeline_logs

Ruft Azure-Build-Protokolle ab

Show the failed logs for the latest Publish build

check_all_projects

Kombiniert MCP- und Azure-Status

Check all projects

Azure DevOps-Integration

Registrieren Sie eine Pipeline-Gruppe mit Organisation, Projekt, Pipeline-Namen und einem PAT:

register_azure_pipelines name="mcp-health-monitor" organization="oaslananka" project="open-source" pipeline_names=["mcp-health-monitor CI","mcp-health-monitor Publish"] pat_token="..."

PAT-Token werden in v1.0 als Base64 in der lokalen SQLite-Datenbank gespeichert. Dies ist eine Kodierung, keine Verschlüsselung. Siehe Hinweise zur Anmeldeinformationsspeicherung.

Warnungskonfiguration

Verwenden Sie set_alert, um einen Server zu konfigurieren:

Feld

Bedeutung

max_response_time_ms

Warnung, wenn eine Prüfung diese Latenz überschreitet

min_uptime_percent

Warnung, wenn das gewählte Betriebszeitfenster unter diesen Wert fällt

consecutive_failures_before_alert

Warnung nach dieser Anzahl aufeinanderfolgender Fehler

Warnungen werden inline durch check_server, check_all und get_dashboard ausgewertet. Die Zustellung per Webhook ist für v1.1 geplant; in v1.0.x ist kein Webhook-MCP-Tool enthalten.

Datenspeicherung

  • Standard-Datenbankpfad: ~/.mcp-health-monitor/health.db

  • Pfad überschreiben: HEALTH_MONITOR_DB=/custom/path/health.db

  • Optionaler Hintergrund-Scheduler: HEALTH_MONITOR_AUTO_CHECK=1

  • HTTP-Server-Status-Endpunkt: GET /health

  • Beispielkonfiguration: .env.example

Die Datenbank verwendet den WAL-Modus für dateibasierte Datenbanken und wendet beim Start automatisch Schema-Migrationen an.

Docker

Erstellen und Ausführen:

docker build -t mcp-health-monitor .
docker run --rm -p 3000:3000 -e HEALTH_MONITOR_AUTO_CHECK=1 mcp-health-monitor

Dann überprüfen:

curl http://localhost:3000/health

Entwicklung

npm install
npm run build
npm test
npm run test:integration
npm run lint
npm run lint:test
npm run format:check

Verwenden Sie npx --yes -p node@20.19.0 -p npm@10.8.2 npm <command> auf Arbeitsstationen, auf denen die Standard-Node-Laufzeitumgebung neuer als das Projektziel ist.

Architektur

Modulübersicht auf hoher Ebene:

  • src/app.ts: MCP-Tool-Registrierung und Antwortformatierung

  • src/checker.ts: Live-MCP-Konnektivitätstests mit Wiederholungs-/Backoff-Logik

  • src/registry.ts: SQLite-Lese-/Schreibpfade für Server, Prüfungen und Pipeline-Datensätze

  • src/db.ts + src/migrations.ts: Verbindungseinrichtung und Schema-Upgrades

  • src/server-http.ts + src/mcp.ts: HTTP- und stdio-Einstiegspunkte

  • src/scheduler.ts: Optionale Hintergrund-Auto-Check-Schleife

Weitere Details finden Sie in architecture.md.

Roadmap

Detaillierte Meilensteinplanung finden Sie in ROADMAP.md.

  • [x] v1.0: Kernüberwachung, Betriebszeit, Warnungen, Azure-Pipelines, Markdown-Berichte

  • [ ] v1.1: Webhook-Benachrichtigungen für Slack, Discord und benutzerdefinierte Endpunkte

  • [ ] v1.2: Multi-Provider-Pipeline und allgemeine HTTP-Überwachung

  • [ ] v2.0: Verschlüsselte PAT-Speicherung und Multi-User-Unterstützung

Sicherheit

Lesen Sie SECURITY.md für die Meldung von Schwachstellen und docs/security.md für implementierungsspezifische Speicherdetails.

Mitwirken

Siehe contributing.md für Einrichtung, Standards und PR-Erwartungen.

Lizenz

MIT

-
security - not tested
A
license - permissive license
-
quality - not tested

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/oaslananka/mcp-health-monitor'

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