Skip to main content
Glama
LukeLamb

claude-systemd-mcp

by LukeLamb

Claude systemd

Инструмент для проверки systemd в режиме только для чтения для Claude Desktop в Linux. Позволяет Claude отвечать на самые распространенные вопросы по администрированию Linux — «почему эта служба не работает?» — без необходимости вручную копировать и вставлять вывод systemctl и journalctl.

Семь инструментов охватывают перечисление юнитов, статус отдельных юнитов, чтение журнала, поиск сбойных юнитов, проверку свойств юнитов, отображение содержимого файлов юнитов (включая переопределения drop-in) и проверку заданий в очереди.

Строго режим только для чтения в v0.1. Нет команд restart, enable, disable или daemon-reload. Безопасно для включения на производственных хостах и общих системах. Если вам нужно деструктивное управление, выполняйте эти команды вручную через claude-terminal-mcp.

Требования

  • Linux с systemd (любой современный Ubuntu/Debian/Fedora/Arch).

  • systemctl и journalctl в PATH (стандарт для systemd).

  • Доступ на чтение к журналу для интересующих вас юнитов. По умолчанию для доступа к системному журналу требуется состоять в группе systemd-journal или adm; журналы пользовательского уровня всегда доступны для чтения их владельцу.

Related MCP server: systemd-mcp

Установка (Claude Desktop)

  1. Скачайте последний файл Systemd.mcpb со страницы Releases.

  2. Settings → Extensions → Extension Developer → Install Extension → выберите .mcpb.

  3. Включите расширение.

Инструменты

Инструмент

Что он делает

list_units

Что запущено? Что загружено? Фильтрация по типу/состоянию.

failed_units

Есть ли что-то неисправное прямо сейчас?

unit_status

Подробный статус для одного юнита: активное/подсостояние, состояние включения, основной PID, количество перезапусков, последние строки журнала, путь к фрагменту, пути к переопределениям drop-in.

unit_show

Полный дамп свойств (переменные окружения, ExecStart, политика перезапуска, зависимости — более 100 свойств).

unit_cat

Текст файла юнита плюс переопределения drop-in — эквивалент systemctl cat <unit>.

tail_journal

Последние записи журнала с дополнительными фильтрами по юниту / времени / приоритету.

list_jobs

Задания systemd, находящиеся в очереди или выполняющиеся в данный момент (редко; полезно для зависших активаций).

Все инструменты поддерживают scope: "user" для проверки юнитов --user. Область действия по умолчанию — system.

Примеры запросов

«Есть ли сейчас что-то в состоянии сбоя?» → failed_units

«Почему ollama.service не использует GPU? Покажи мне его переопределения drop-in и последние 50 строк лога.» → unit_cat ollama затем tail_journal unit=ollama lines=50

«Что было в журнале об ошибках и более серьезных проблемах за последние 10 минут?» → tail_journal priority=3 since="10 minutes ago"

«Включен ли nginx при загрузке и сколько раз он перезапускался с момента последней загрузки?» → unit_status nginx

Политика конфиденциальности

Это расширение работает полностью на вашей локальной машине и вызывает только systemctl и journalctl. Никакие данные не покидают вашу машину. Нет сетевого ввода-вывода. Режим только для чтения — нельзя изменять, перезапускать, включать, отключать или перезагружать что-либо.

Информация, доступная Claude, включает:

  • Имена, описания и метаданные каждого системного или пользовательского юнита, который вы запрашиваете (или каждого загруженного юнита, если вы вызываете list_units).

  • Полное содержимое файлов юнитов и переопределений drop-in (unit_cat) — они могут содержать строки Environment= с секретами, если вы их там указали. Не храните учетные данные в файлах юнитов, если собираетесь использовать это расширение.

  • Последние записи журнала для запрошенных юнитов — включая любые сообщения, которые записывают службы, что может содержать персональные данные, IP-адреса, пути запросов или трассировки стека.

  • Идентификаторы процессов (PID), количество перезапусков и свойства среды выполнения служб.

Если ваши файлы юнитов или журналы содержат конфиденциальные данные и вы не доверяете конечной точке LLM, не включайте это расширение.

Почему нет деструктивных операций?

Набор restart_unit / enable_unit / disable_unit был намеренно исключен из v0.1, потому что:

  1. Для системных юнитов требуются права root, что означает либо запуск Claude Desktop от имени root (плохо), либо настройку правил sudo (специфические сложности для расширения).

  2. Они редко нужны в рабочем процессе, который на самом деле обслуживает это расширение — «почему X сломалось» — это 95% случаев.

  3. Если вам нужно перезапустить службу, существующий claude-terminal-mcp предоставляет вам run_command sudo systemctl restart <unit> с теми же механизмами sudo, которые вы использовали бы в любом другом месте, плюс шаг подтверждения в системной подсказке.

Сохранение этого расширения в режиме только для чтения означает, что его можно включить на производственном хосте, общей рабочей станции или машине клиента без проблем с доверием. В v0.2 этот вопрос может быть пересмотрен.

Устранение неполадок

"systemctl is not installed" — Этот сервер работает только в Linux. macOS и Windows не используют systemd.

"Permission denied" при чтении журнала — Добавьте себя в группу systemd-journal или adm: sudo usermod -aG systemd-journal $USER, затем выйдите из системы и войдите снова. Или вызывайте с scope: "user" для чтения только вашего собственного журнала пользовательского уровня (группа не требуется).

Пустые результаты tail_journal — Некоторые дистрибутивы имеют ограничение по скорости или энергозависимые журналы. Проверьте Storage= в /etc/systemd/journald.conf — volatile означает, что журнал очищается при перезагрузке.

Разработка

Один скрипт на Node.js (~400 строк), ноль зависимостей npm. Пересборка .mcpb:

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

Лицензия

MIT. См. LICENSE.

Связанные проекты

  • claude-terminal-mcp — оболочка + файловая система + фоновые задания (используйте это для деструктивных действий systemctl).

  • claude-sessions-mcp — управление сессиями tmux для длительных заданий.

  • claude-rocm-mcp — мониторинг AMD GPU; хорошо сочетается с вопросами «здоров ли GPU?» наряду с «здорова ли служба GPU?»

  • claude-linux-mcp — управление рабочим столом X11.

  • claude-ollama-mcp — локальный клиент HTTP-API Ollama.

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