Cover image
Try Now
2025-04-07

3 years

Works with Finder

1

Github Watches

0

Github Forks

2

Github Stars

MCP Linux Common Utility Server

The Model Context Protocol (MCP) Linux Common Utility (LCU) Server is a Python-based server that provides access to various Linux system operations and information through the Model Context Protocol.

Features

  • CPU Operations: CPU information, usage, load average, etc.
  • Memory Operations: Memory and swap information, usage statistics.
  • Process/Thread Operations: Process listing, information, and management.
  • Storage Operations: Disk, volume, and partition information.
  • Filesystem Operations: File creation, deletion, updating, and information.
  • Hardware Operations: Hardware detection and information.
  • Network Operations: Interface information, connectivity testing, and data transfer.
  • Monitoring Operations: System status monitoring and health checks.

Installation

Prerequisites

  • Python 3.10 or higher
  • Linux operating system

Installation Steps

  1. Clone the repository:

    git clone https://github.com/yourusername/mcp_lcu_server.git
    cd mcp_lcu_server
    
  2. Install the package:

    pip install -e .
    

Configuration

The server can be configured using a YAML configuration file. By default, it looks for the configuration file in the following locations:

  • ./config.yaml
  • ./config/config.yaml
  • /etc/mcp-lcu-server/config.yaml
  • ~/.config/mcp-lcu-server/config.yaml

You can also specify a custom configuration file path using the --config command-line option.

Configuration File Example

server:
  name: mcp-lcu-server
  transport: both  # stdio, sse, or both
  port: 8000
  host: 127.0.0.1

monitoring:
  enabled: true
  interval: 30  # seconds
  metrics:
    - cpu
    - memory
    - disk
    - network

filesystem:
  allowed_paths:
    - /
  max_file_size: 10485760  # 10MB

network:
  allow_downloads: true
  allow_uploads: true
  max_download_size: 104857600  # 100MB
  max_upload_size: 10485760  # 10MB
  allowed_domains:
    - "*"  # Allow all domains

process:
  allow_kill: false
  allowed_users: []

Usage

Starting the Server

You can start the server using the command-line interface:

mcp-lcu-server [OPTIONS]

Available options:

  • --config, -c: Path to the configuration file
  • --transport, -t: Transport type (stdio, sse, or both)
  • --port, -p: Port for SSE transport
  • --host, -h: Host for SSE transport
  • --debug, -d: Enable debug logging

Transport Types

The server supports the following transport types:

  • stdio: Standard input/output transport
  • sse: Server-Sent Events transport

Examples

Start the server with stdio transport:

mcp-lcu-server --transport stdio

Start the server with SSE transport on port 8000:

mcp-lcu-server --transport sse --port 8000

Start the server with both transports:

mcp-lcu-server --transport both

API Documentation

Tools

The server provides various tools for interacting with the Linux system:

CPU Tools

  • get_cpu_info: Get detailed CPU information
  • get_cpu_usage: Get CPU usage percentage
  • get_load_average: Get system load average
  • analyze_cpu_performance: Analyze CPU performance

Memory Tools

  • get_memory_info: Get detailed memory information
  • get_memory_usage: Get memory usage
  • get_swap_info: Get swap information
  • analyze_memory_performance: Analyze memory performance

Process Tools

  • list_processes: List all processes
  • get_process_info: Get detailed information about a process
  • search_processes: Search for processes
  • analyze_top_processes: Analyze top processes by CPU and memory usage

Storage Tools

  • list_disks: List physical disks
  • list_partitions: List disk partitions
  • get_disk_usage: Get disk usage
  • analyze_storage_usage: Analyze storage usage

Filesystem Tools

  • list_directory: List contents of a directory
  • read_file: Read file contents
  • write_file: Write content to a file
  • delete_file: Delete a file or directory
  • copy_file: Copy a file or directory
  • move_file: Move a file or directory
  • search_files: Search for files matching a pattern
  • search_file_contents: Search for files containing a pattern

Hardware Tools

  • get_system_info: Get general system information
  • get_cpu_info: Get CPU information
  • get_memory_info: Get memory information
  • get_storage_info: Get storage information
  • get_pci_devices: Get PCI device information
  • get_usb_devices: Get USB device information
  • analyze_hardware: Analyze hardware configuration

Network Tools

  • get_network_interfaces: Get network interfaces information
  • get_network_connections: Get network connections
  • get_network_stats: Get network statistics
  • ping_host: Ping a host
  • traceroute_host: Trace route to a host
  • http_get_request: Perform HTTP GET request
  • download_file_from_url: Download a file from a URL
  • upload_file_to_url: Upload a file to a URL
  • analyze_network: Analyze network configuration and connectivity

Monitoring Tools

  • get_system_status: Get system status
  • check_system_health: Check system health
  • monitor_resources: Monitor resource usage
  • get_system_uptime: Get system uptime
  • get_system_load: Get system load
  • analyze_system_performance: Analyze system performance

Resources

The server also provides various resources that can be accessed via MCP:

System Resources

  • linux://system/info: System information
  • linux://system/cpu: CPU information
  • linux://system/memory: Memory information
  • linux://system/uptime: System uptime

Monitoring Resources

  • linux://monitoring/status: System status
  • linux://monitoring/health: System health
  • linux://monitoring/resources: Resource usage

Filesystem Resources

  • linux://fs/dir/{path}: Directory listing
  • linux://fs/info/{path}: File information
  • linux://fs/file/{path}: File contents
  • linux://fs/usage/{path}: Directory usage analysis

Network Resources

  • linux://network/interfaces: Network interfaces
  • linux://network/connections: Network connections
  • linux://network/stats: Network statistics
  • linux://network/ping/{host}: Ping a host
  • linux://network/traceroute/{host}: Trace route to a host
  • linux://network/analysis: Network analysis

Security Considerations

The server provides access to various system operations, which can be potentially dangerous if misused. Make sure to:

  • Configure the allowed paths for filesystem operations
  • Configure the allowed domains for network operations
  • Restrict the ability to kill processes
  • Run the server with appropriate permissions

License

This project is licensed under the MIT License - see the LICENSE file for details.

相关推荐

  • Joshua Armstrong
  • Confidential guide on numerology and astrology, based of GG33 Public information

  • https://suefel.com
  • Latest advice and best practices for custom GPT development.

  • Emmet Halm
  • Converts Figma frames into front-end code for various mobile frameworks.

  • Elijah Ng Shi Yi
  • Advanced software engineer GPT that excels through nailing the basics.

  • https://maiplestudio.com
  • Find Exhibitors, Speakers and more

  • Yusuf Emre Yeşilyurt
  • I find academic articles and books for research and literature reviews.

  • Carlos Ferrin
  • Encuentra películas y series en plataformas de streaming.

  • https://zenepic.net
  • Embark on a thrilling diplomatic quest across a galaxy on the brink of war. Navigate complex politics and alien cultures to forge peace and avert catastrophe in this immersive interstellar adventure.

  • lumpenspace
  • Take an adjectivised noun, and create images making it progressively more adjective!

  • apappascs
  • Découvrez la collection la plus complète et la plus à jour de serveurs MCP sur le marché. Ce référentiel sert de centre centralisé, offrant un vaste catalogue de serveurs MCP open-source et propriétaires, avec des fonctionnalités, des liens de documentation et des contributeurs.

  • ShrimpingIt
  • Manipulation basée sur Micropython I2C de l'exposition GPIO de la série MCP, dérivée d'Adafruit_MCP230XX

  • pontusab
  • La communauté du curseur et de la planche à voile, recherchez des règles et des MCP

  • av
  • Exécutez sans effort LLM Backends, API, Frontends et Services avec une seule commande.

  • jae-jae
  • MCP Server pour récupérer le contenu de la page Web à l'aide du navigateur sans tête du dramwright.

  • ravitemer
  • Un puissant plugin Neovim pour gérer les serveurs MCP (Protocole de contexte modèle)

  • 1Panel-dev
  • 🔥 1Panel fournit une interface Web intuitive et un serveur MCP pour gérer des sites Web, des fichiers, des conteneurs, des bases de données et des LLM sur un serveur Linux.

  • Mintplex-Labs
  • L'application tout-en-un desktop et Docker AI avec chiffon intégré, agents AI, constructeur d'agent sans code, compatibilité MCP, etc.

  • patruff
  • Pont entre les serveurs Olllama et MCP, permettant aux LLM locaux d'utiliser des outils de protocole de contexte de modèle

  • GeyserMC
  • Une bibliothèque de communication avec un client / serveur Minecraft.

    Reviews

    5 (1)
    Avatar
    user_pNMUdpPo
    2025-04-18

    As a devoted user of mcp_lcu_server, I find this server application by guolisen extremely efficient and reliable. The clear documentation on its GitHub page (https://github.com/guolisen/mcp_lcu_server) makes deployment a breeze. Its robust functionality and smooth performance demonstrate guolisen's expertise and commitment to providing a top-notch tool in server management. Highly recommended!