systerd-lite

systerd-lite

An AI-Native OS Core that enables LLMs to autonomously monitor, control, and optimize Linux systems with 200+ system control tools covering process management, security, containers, and self-editing capabilities.

Category
访问服务器

README

systerd-lite

<div align="center">

AI-Native OS Core for Linux Systems

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

</div>


🎯 概要

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)

<div align="center">

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.

</div>


🎯 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

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选