Skip to main content
Glama

systerd-lite

AI-Native OS Core for Linux Systems

LLMがシステムを自律的に監視・制御・最適化するためのMCPサーバー


🎯 概要

systerd-lite は、LLM(大規模言語モデル)がLinuxシステムを「自分の体」として操作できるようにするMCPサーバーです。

主な特徴

  • 🔧 200+ のシステム制御ツール: プロセス管理、ネットワーク、ストレージ、セキュリティなど

  • 🤖 LLM自己編集機能: LLMが自身のコードや環境を読み書き・修正可能

  • 📡 汎用MCP対応: HTTP/SSE/stdio の3トランスポートをサポート

  • 🎛️ Gradio UI: ブラウザベースの管理インターフェース

  • 🔐 柔軟な権限管理: ツールごとの権限設定とテンプレート


📦 クイックスタート

起動

# リポジトリをクローン
git clone https://github.com/your/sisterd_lite.git
cd sisterd_lite

# 起動(依存関係は自動インストール)
chmod +x start-mcp.sh
./start-mcp.sh

エンドポイント

サービス

URL

説明

HTTP API

http://localhost:8089

MCP JSON-RPC エンドポイント

Gradio UI

http://localhost:7861

Web管理インターフェース

Health

http://localhost:8089/health

ヘルスチェック

動作確認

# ヘルスチェック
curl http://localhost:8089/health

# システム情報取得
curl -X POST http://localhost:8089 \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_system_info","arguments":{}}}'

🛠️ ツールカテゴリ

📊 Monitoring(監視)

ツール

説明

get_system_info

システム全体の情報

get_cpu_info

CPU詳細情報

get_memory_info

メモリ使用量

get_disk_usage

ディスク使用量

get_temperature

温度センサー

list_processes

プロセス一覧

get_top_processes

リソース消費上位

🔐 Security(セキュリティ)

ツール

説明

get_selinux_status

SELinux状態

get_apparmor_status

AppArmor状態

list_firewall_rules

ファイアウォールルール

scan_suid_files

SUID/SGIDファイル検索

get_failed_logins

失敗ログイン試行

audit_permissions

パーミッション監査

🖥️ System(システム)

ツール

説明

manage_service

systemdサービス制御

list_units

systemdユニット一覧

get_kernel_modules

カーネルモジュール

get_hardware_info

ハードウェア情報

get_usb_devices

USBデバイス一覧

�� Container(コンテナ)

ツール

説明

list_containers

コンテナ一覧

start_container

コンテナ起動

stop_container

コンテナ停止

run_container

新規コンテナ実行

get_container_logs

ログ取得

🤖 Self(LLM自己編集)

LLMが自分自身の環境を操作するためのツール群

ツール

説明

read_workspace_file

ワークスペース内ファイル読み取り

write_workspace_file

ファイル書き込み・作成

append_to_file

ファイル追記

list_workspace_directory

ディレクトリ一覧

search_workspace

ファイル/コンテンツ検索

execute_shell_command

シェルコマンド実行

install_python_package

Pythonパッケージインストール

get_python_environment

Python環境情報

set_environment_variable

環境変数設定

restart_self

サーバー自己再起動

get_self_status

サーバー状態取得

backup_workspace

ワークスペースバックアップ

🧮 Calculator(計算)

ツール

説明

calculate

数式評価

convert_units

単位変換

matrix_operation

行列演算

statistics

統計計算

solve_equation

方程式求解

⚙️ MCP Config(設定管理)

ツール

説明

get_mcp_config

現在の設定取得

list_mcp_tools

ツール一覧

set_mcp_tool_permission

個別権限設定

apply_mcp_template

テンプレート適用

get_mcp_templates

利用可能テンプレート


📋 テンプレート

用途に応じてツールセットを一括設定できます:

テンプレート

ツール数

用途

minimal

~18

安全な監視のみ

monitoring

~18

システム監視

development

~47

開発用(コンテナ、自己編集含む)

security

~31

セキュリティ監査

full

~200

全ツール有効

# テンプレート適用
curl -X POST http://localhost:8089 \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"apply_mcp_template","arguments":{"template":"development"}}}'

🔌 クライアント設定

VS Code

.vscode/mcp.json:

{
  "servers": {
    "systerd": {
      "type": "http",
      "url": "http://localhost:8089"
    }
  }
}

Claude Desktop

~/.config/claude/claude_desktop_config.json:

{
  "mcpServers": {
    "systerd": {
      "command": "python3",
      "args": ["/path/to/mcp_server_unified.py"]
    }
  }
}

Ollama / HTTP クライアント

# ツール一覧取得
curl -X POST http://localhost:8089 \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'

# ツール呼び出し
curl -X POST http://localhost:8089 \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_uptime","arguments":{}}}'

🏗️ アーキテクチャ

┌─────────────────────────────────────────────────────────────────┐
│                         Clients                                  │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐  ┌──────────┐         │
│  │ VS Code  │  │  Claude  │  │  Ollama  │  │ Gradio UI│         │
│  └────┬─────┘  └────┬─────┘  └────┬─────┘  └────┬─────┘         │
│       │             │             │             │                │
│       └─────────────┴──────┬──────┴─────────────┘                │
│                            │                                     │
│                     ┌──────▼──────┐                              │
│                     │  MCP HTTP   │  Port 8089                   │
│                     │  Endpoint   │                              │
│                     └──────┬──────┘                              │
│                            │                                     │
└────────────────────────────┼─────────────────────────────────────┘
                             │
┌────────────────────────────▼─────────────────────────────────────┐
│                     systerd-lite                                 │
│  ┌─────────────────────────────────────────────────────────────┐ │
│  │                     MCPHandler                               │ │
│  │  ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐        │ │
│  │  │Monitoring│ │ Security │ │ Container│ │   Self   │        │ │
│  │  │  Tools   │ │  Tools   │ │  Tools   │ │  Tools   │        │ │
│  │  └──────────┘ └──────────┘ └──────────┘ └──────────┘        │ │
│  └─────────────────────────────────────────────────────────────┘ │
│                            │                                     │
│  ┌─────────────────────────▼───────────────────────────────────┐ │
│  │               Permission Manager                             │ │
│  │    DISABLED │ READ_ONLY │ AI_ASK │ AI_AUTO                   │ │
│  └─────────────────────────────────────────────────────────────┘ │
│                            │                                     │
└────────────────────────────┼─────────────────────────────────────┘
                             │
┌────────────────────────────▼─────────────────────────────────────┐
│                      Linux System                                │
│  ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐            │
│  │ systemd  │ │  psutil  │ │  Docker  │ │ File I/O │            │
│  └──────────┘ └──────────┘ └──────────┘ └──────────┘            │
└──────────────────────────────────────────────────────────────────┘

📁 ファイル構成

sisterd_lite/
├── start-mcp.sh          # 推奨起動スクリプト
├── start-lite.sh         # 代替起動スクリプト
├── systerd-lite.py       # メインアプリケーション
├── mcp_server_unified.py # stdio/HTTP/SSE統合サーバー
├── README.md             # このファイル
├── .vscode/
│   └── mcp.json          # VS Code MCP設定
├── .state/
│   └── permissions.json  # ツール権限設定(自動生成)
└── systerd_lite/         # Pythonモジュール
    ├── mcp.py            # MCPハンドラー(200+ツール)
    ├── permissions.py    # 権限管理
    ├── sensors.py        # システムセンサー
    ├── tuner.py          # システムチューニング
    ├── container.py      # コンテナ管理
    ├── scheduler.py      # タスクスケジューラ
    └── ui/               # Gradio UIモジュール

🔧 起動オプション

# 基本起動
./start-mcp.sh

# カスタムポート
./systerd-lite.py --port 9000 --gradio 9001

# ヘッドレスモード(UIなし)
./systerd-lite.py --no-ui

# デバッグモード
./systerd-lite.py --debug

🔐 セキュリティ

権限レベル

レベル

説明

DISABLED

ツール無効

READ_ONLY

読み取りのみ

AI_ASK

実行前に確認

AI_AUTO

自動実行許可

推奨事項

  • 本番環境では minimal または monitoring テンプレートを使用

  • self カテゴリのツールは信頼できる環境でのみ有効化

  • HTTP APIは必要に応じてファイアウォールで保護



systerd-lite (English)

AI-Native OS Core for Linux Systems

An MCP server that allows LLMs to autonomously monitor, control, and optimize Linux systems as their own body.


🎯 Overview

systerd-lite is an MCP server that enables LLMs (Large Language Models) to operate Linux systems as their own body.

Key Features

  • 🔧 200+ System Control Tools: Process management, network, storage, security, and more

  • 🤖 LLM Self-Editing: LLM can read, write, and modify its own code and environment

  • 📡 Universal MCP Support: Supports HTTP/SSE/stdio transports

  • 🎛️ Gradio UI: Browser-based management interface

  • 🔐 Flexible Permission Management: Per-tool permission settings and templates


📦 Quick Start

Launch

# Clone repository
git clone https://github.com/your/sisterd_lite.git
cd sisterd_lite

# Start (dependencies auto-installed)
chmod +x start-mcp.sh
./start-mcp.sh

Endpoints

Service

URL

Description

HTTP API

http://localhost:8089

MCP JSON-RPC endpoint

Gradio UI

http://localhost:7861

Web management interface

Health

http://localhost:8089/health

Health check

Verification

# Health check
curl http://localhost:8089/health

# Get system info
curl -X POST http://localhost:8089 \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_system_info","arguments":{}}}'

🛠️ Tool Categories

📊 Monitoring

Tool

Description

get_system_info

System overview

get_cpu_info

Detailed CPU info

get_memory_info

Memory usage

get_disk_usage

Disk usage

get_temperature

Temperature sensors

list_processes

Process list

get_top_processes

Top resource usage

🔐 Security

Tool

Description

get_selinux_status

SELinux status

get_apparmor_status

AppArmor status

list_firewall_rules

Firewall rules

scan_suid_files

SUID/SGID file scan

get_failed_logins

Failed login attempts

audit_permissions

Permission audit

🖥️ System

Tool

Description

manage_service

systemd service control

list_units

systemd unit list

get_kernel_modules

Kernel modules

get_hardware_info

Hardware info

get_usb_devices

USB device list

🐳 Container

Tool

Description

list_containers

Container list

start_container

Start container

stop_container

Stop container

run_container

Run new container

get_container_logs

Get logs

🤖 Self (LLM Self-Editing)

Tools for LLM to operate its own environment

Tool

Description

read_workspace_file

Read workspace file

write_workspace_file

Write/create file

append_to_file

Append to file

list_workspace_directory

List directory

search_workspace

Search files/content

execute_shell_command

Run shell command

install_python_package

Install Python package

get_python_environment

Python environment info

set_environment_variable

Set environment variable

restart_self

Restart server

get_self_status

Get server status

backup_workspace

Backup workspace

🧮 Calculator

Tool

Description

calculate

Evaluate expression

convert_units

Unit conversion

matrix_operation

Matrix operations

statistics

Statistics

solve_equation

Equation solving

⚙️ MCP Config

Tool

Description

get_mcp_config

Get current config

list_mcp_tools

List tools

set_mcp_tool_permission

Set individual permission

apply_mcp_template

Apply template

get_mcp_templates

Available templates


📋 Templates

Set toolsets for different use cases:

Template

Tool Count

Use Case

minimal

~18

Safe monitoring only

monitoring

~18

System monitoring

development

~47

Development (includes container, self-edit)

security

~31

Security audit

full

~200

All tools enabled

# Apply template
curl -X POST http://localhost:8089 \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"apply_mcp_template","arguments":{"template":"development"}}}'

🔌 Client Configuration

VS Code

.vscode/mcp.json:

{
  "servers": {
    "systerd": {
      "type": "http",
      "url": "http://localhost:8089"
    }
  }
}

Claude Desktop

~/.config/claude/claude_desktop_config.json:

{
  "mcpServers": {
    "systerd": {
      "command": "python3",
      "args": ["/path/to/mcp_server_unified.py"]
    }
  }
}

Ollama / HTTP Client

# List tools
curl -X POST http://localhost:8089 \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'

# Call tool
curl -X POST http://localhost:8089 \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_uptime","arguments":{}}}'

🏗️ Architecture

┌─────────────────────────────────────────────────────────────────┐
│                         Clients                                  │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐  ┌──────────┐         │
│  │ VS Code  │  │  Claude  │  │  Ollama  │  │ Gradio UI│         │
│  └────┬─────┘  └────┬─────┘  └────┬─────┘  └────┬─────┘         │
│       │             │             │             │                │
│       └─────────────┴──────┬──────┴─────────────┘                │
│                            │                                     │
│                     ┌──────▼──────┐                              │
│                     │  MCP HTTP   │  Port 8089                   │
│                     │  Endpoint   │                              │
│                     └──────┬──────┘                              │
│                            │                                     │
└────────────────────────────┼─────────────────────────────────────┘
                             │
┌────────────────────────────▼─────────────────────────────────────┐
│                     systerd-lite                                 │
│  ┌─────────────────────────────────────────────────────────────┐ │
│  │                     MCPHandler                               │ │
│  │  ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐        │ │
│  │  │Monitoring│ │ Security │ │ Container│ │   Self   │        │ │
│  │  │  Tools   │ │  Tools   │ │  Tools   │ │  Tools   │        │ │
│  │  └──────────┘ └──────────┘ └──────────┘ └──────────┘        │ │
│  └─────────────────────────────────────────────────────────────┘ │
│                            │                                     │
│  ┌─────────────────────────▼───────────────────────────────────┐ │
│  │               Permission Manager                             │ │
│  │    DISABLED │ READ_ONLY │ AI_ASK │ AI_AUTO                   │ │
│  └─────────────────────────────────────────────────────────────┘ │
│                            │                                     │
└────────────────────────────┼─────────────────────────────────────┘
                             │
┌────────────────────────────▼─────────────────────────────────────┐
│                      Linux System                                │
│  ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐            │
│  │ systemd  │ │  psutil  │ │  Docker  │ │ File I/O │            │
│  └──────────┘ └──────────┘ └──────────┘ └──────────┘            │
└──────────────────────────────────────────────────────────────────┘

📁 File Structure

sisterd_lite/
├── start-mcp.sh          # Recommended startup script
├── start-lite.sh         # Alternative startup script
├── systerd-lite.py       # Main application
├── mcp_server_unified.py # Unified stdio/HTTP/SSE server
├── README.md             # This file
├── .vscode/
│   └── mcp.json          # VS Code MCP config
├── .state/
│   └── permissions.json  # Tool permission config (auto-generated)
└── systerd_lite/         # Python modules
    ├── mcp.py            # MCP handler (200+ tools)
    ├── permissions.py    # Permission management
    ├── sensors.py        # System sensors
    ├── tuner.py          # System tuning
    ├── container.py      # Container management
    ├── scheduler.py      # Task scheduler
    └── ui/               # Gradio UI module

🔧 Startup Options

# Basic startup
./start-mcp.sh

# Custom ports
./systerd-lite.py --port 9000 --gradio 9001

# Headless mode (no UI)
./systerd-lite.py --no-ui

# Debug mode
./systerd-lite.py --debug

🔐 Security

Permission Levels

Level

Description

DISABLED

Tool disabled

READ_ONLY

Read-only

AI_ASK

Confirm before execution

AI_AUTO

Auto-execute allowed

Recommendations

  • Use minimal or monitoring template in production

  • Enable self category tools only in trusted environments

  • Protect HTTP API with firewall as needed


-
security - not tested
F
license - not found
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

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/rintaro-s/sisterd_lite'

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