Skip to main content
Glama
LukeLamb

claude-systemd-mcp

by LukeLamb

Claude systemd

Schreibgeschützte systemd-Inspektion für Claude Desktop unter Linux. Ermöglicht es Claude, die häufigste Linux-Betriebsfrage zu beantworten – „Warum ist dieser Dienst defekt?“ – ohne dass Sie die Ausgaben von systemctl und journalctl manuell kopieren und einfügen müssen.

Sieben Tools decken das Auflisten von Einheiten, den Status pro Einheit, das Auslesen des Journals, die Suche nach fehlerhaften Einheiten, die Inspektion von Einheiteneigenschaften, die Anzeige von Roh-Einheitsdateien (einschließlich Drop-in-Overrides) und die Inspektion von wartenden Jobs ab.

In v0.1 strikt schreibgeschützt. Kein restart, enable, disable oder daemon-reload. Sicher auf Produktions-Hosts und gemeinsam genutzten Systemen zu aktivieren. Wenn Sie destruktive Kontrolle benötigen, führen Sie diese Befehle manuell über claude-terminal-mcp aus.

Anforderungen

  • Linux mit systemd (jedes moderne Ubuntu/Debian/Fedora/Arch).

  • systemctl und journalctl im PATH (Standard bei systemd).

  • Lesezugriff auf das Journal für die Einheiten, die Sie interessieren. Standardmäßig erfordert der systemweite Journalzugriff die Mitgliedschaft in der Gruppe systemd-journal oder adm; Benutzer-Journale sind immer für ihren Besitzer lesbar.

Related MCP server: systemd-mcp

Installation (Claude Desktop)

  1. Laden Sie die neueste Systemd.mcpb von der Releases-Seite herunter.

  2. Einstellungen → Erweiterungen → Erweiterungsentwickler → Erweiterung installieren → wählen Sie die .mcpb aus.

  3. Aktivieren.

Tools

Tool

Was es beantwortet

list_units

Was läuft? Was ist geladen? Filtern nach Typ/Status.

failed_units

Ist gerade etwas defekt?

unit_status

Detaillierter Status für eine Einheit: aktiver/sub-Status, aktivierter Status, Haupt-PID, Neustart-Anzahl, aktuelle Journal-Zeilen, Fragment-Pfad, Drop-in-Override-Pfade.

unit_show

Vollständiger Eigenschafts-Dump (Umgebungsvariablen, ExecStart, Neustart-Richtlinie, Abhängigkeiten – über 100 Eigenschaften).

unit_cat

Roh-Einheitsdateitext plus Drop-in-Overrides – entspricht systemctl cat <unit>.

tail_journal

Aktuelle Log-Einträge mit optionalen Filtern für Einheit / Zeit / Priorität.

list_jobs

Derzeit wartende oder laufende systemd-Jobs (selten; nützlich bei hängenden Aktivierungen).

Alle Tools unterstützen scope: "user", um --user-Einheiten zu inspizieren. Der Standard-Scope ist system.

Beispiel-Prompts

„Ist gerade irgendetwas im fehlerhaften Zustand?“ → failed_units

„Warum nutzt ollama.service die GPU nicht? Zeig mir die Drop-in-Overrides und die letzten 50 Log-Zeilen.“ → unit_cat ollama dann tail_journal unit=ollama lines=50

„Was sagt das Journal über Fehler und Schlimmeres in den letzten 10 Minuten?“ → tail_journal priority=3 since="10 minutes ago"

„Ist nginx beim Booten aktiviert und wie oft wurde es seit dem letzten Booten neu gestartet?“ → unit_status nginx

Datenschutzrichtlinie

Diese Erweiterung läuft vollständig auf Ihrem lokalen Computer und greift nur auf systemctl und journalctl zu. Es verlassen keine Daten Ihren Computer. Kein Netzwerk-I/O. Schreibgeschützt – kann nichts ändern, neu starten, aktivieren, deaktivieren oder neu laden.

Die für Claude sichtbaren Informationen umfassen:

  • Namen, Beschreibungen und Metadaten jeder System- oder Benutzereinheit, die Sie abfragen (oder jede geladene Einheit, wenn Sie list_units aufrufen).

  • Der vollständige Inhalt von Einheitsdateien und Drop-in-Overrides (unit_cat) – diese können Environment=-Zeilen mit Geheimnissen enthalten, falls Sie diese dort festgelegt haben. Speichern Sie keine Anmeldedaten in Einheitsdateien, wenn Sie diese Erweiterung aktivieren möchten.

  • Aktuelle Journal-Einträge für abgefragte Einheiten – einschließlich aller Nachrichten, die Dienste protokollieren, welche personenbezogene Daten, IP-Adressen, Anforderungspfade oder Stack-Traces enthalten können.

  • Prozess-IDs, Neustart-Anzahlen und Laufzeiteigenschaften von Diensten.

Wenn Ihre Einheitsdateien oder Journale sensible Daten enthalten und Sie dem LLM-Endpunkt nicht vertrauen, aktivieren Sie diese Erweiterung nicht.

Warum keine destruktiven Operationen?

Ein restart_unit / enable_unit / disable_unit-Set wurde in v0.1 bewusst weggelassen, weil:

  1. Sie Root-Rechte für System-Einheiten erfordern, was bedeutet, entweder Claude Desktop als Root auszuführen (schlecht) oder sudo-Regeln zu konfigurieren (erweiterungsspezifischer Aufwand).

  2. Sie in dem Workflow, den diese Erweiterung tatsächlich bedient, selten benötigt werden – „Warum ist X defekt“ ist der 95%-Fall.

  3. Wenn Sie einen Dienst neu starten müssen, bietet das vorhandene claude-terminal-mcp Ihnen run_command sudo systemctl restart <unit> mit denselben sudo-Mechanismen, die Sie überall sonst verwenden würden, plus einen Bestätigungsschritt an der System-Eingabeaufforderung.

Die Beibehaltung des Schreibschutzes dieser Erweiterung bedeutet, dass sie auf einem Produktions-Host, einer gemeinsam genutzten Workstation oder einer Kundenmaschine ohne Vertrauensbedenken aktiviert werden kann. v0.2 könnte dies überdenken.

Fehlerbehebung

„systemctl is not installed“ – Dieser Server ist nur für Linux. macOS und Windows führen kein systemd aus.

„Permission denied“ beim Lesen des Journals – Fügen Sie sich selbst zu systemd-journal oder adm hinzu: sudo usermod -aG systemd-journal $USER und melden Sie sich dann ab und wieder an. Oder rufen Sie es mit scope: "user" auf, um nur Ihr eigenes Benutzer-Journal zu lesen (keine Gruppe erforderlich).

Leere tail_journal-Ergebnisse – Einige Distributionen haben ratenbegrenzte oder flüchtige Journale. Überprüfen Sie Storage= in /etc/systemd/journald.conf – volatile bedeutet, dass das Journal beim Neustart gelöscht wird.

Entwicklung

Einzelnes ~400-zeiliges Node.js-Skript, null npm-Abhängigkeiten. Bauen Sie die .mcpb neu:

cd bundle-source
zip -j ../Systemd.mcpb manifest.json package.json server.js README.md LICENSE icon.png glama.json

Lizenz

MIT. Siehe LICENSE.

Verwandtes

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides read-only access to Unix/Linux command-line tools for AI agents, blocking dangerous operations like file deletion, modification, and command execution while enabling safe file inspection, searching, and system information gathering.
    -
  • A
    license
    Not graded
    quality
    Not graded
    maintenance
    Provides AI assistants with safe, read-only access to Linux systemd services, including status monitoring, log querying, and dependency analysis, with optional granular permissions for service management actions.
    2
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    Lets MCP clients (Claude Code, Claude Desktop) inspect a Linux home server's health over the network: uptime, load, memory, disk, Docker containers, systemd services, journal errors, and listening ports. Read-only, bearer-token secured.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI assistants to read and analyze Linux system logs—including systemd journal, syslog, kernel, application, and Docker container logs—for diagnostics and predictive analysis.
    MIT