MCP Linux Common Utility Server
guolisen
README
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
-
Clone the repository:
git clone https://github.com/yourusername/mcp_lcu_server.git cd mcp_lcu_server
-
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 transportsse
: 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 informationget_cpu_usage
: Get CPU usage percentageget_load_average
: Get system load averageanalyze_cpu_performance
: Analyze CPU performance
Memory Tools
get_memory_info
: Get detailed memory informationget_memory_usage
: Get memory usageget_swap_info
: Get swap informationanalyze_memory_performance
: Analyze memory performance
Process Tools
list_processes
: List all processesget_process_info
: Get detailed information about a processsearch_processes
: Search for processesanalyze_top_processes
: Analyze top processes by CPU and memory usage
Storage Tools
list_disks
: List physical diskslist_partitions
: List disk partitionsget_disk_usage
: Get disk usageanalyze_storage_usage
: Analyze storage usage
Filesystem Tools
list_directory
: List contents of a directoryread_file
: Read file contentswrite_file
: Write content to a filedelete_file
: Delete a file or directorycopy_file
: Copy a file or directorymove_file
: Move a file or directorysearch_files
: Search for files matching a patternsearch_file_contents
: Search for files containing a pattern
Hardware Tools
get_system_info
: Get general system informationget_cpu_info
: Get CPU informationget_memory_info
: Get memory informationget_storage_info
: Get storage informationget_pci_devices
: Get PCI device informationget_usb_devices
: Get USB device informationanalyze_hardware
: Analyze hardware configuration
Network Tools
get_network_interfaces
: Get network interfaces informationget_network_connections
: Get network connectionsget_network_stats
: Get network statisticsping_host
: Ping a hosttraceroute_host
: Trace route to a hosthttp_get_request
: Perform HTTP GET requestdownload_file_from_url
: Download a file from a URLupload_file_to_url
: Upload a file to a URLanalyze_network
: Analyze network configuration and connectivity
Monitoring Tools
get_system_status
: Get system statuscheck_system_health
: Check system healthmonitor_resources
: Monitor resource usageget_system_uptime
: Get system uptimeget_system_load
: Get system loadanalyze_system_performance
: Analyze system performance
Resources
The server also provides various resources that can be accessed via MCP:
System Resources
linux://system/info
: System informationlinux://system/cpu
: CPU informationlinux://system/memory
: Memory informationlinux://system/uptime
: System uptime
Monitoring Resources
linux://monitoring/status
: System statuslinux://monitoring/health
: System healthlinux://monitoring/resources
: Resource usage
Filesystem Resources
linux://fs/dir/{path}
: Directory listinglinux://fs/info/{path}
: File informationlinux://fs/file/{path}
: File contentslinux://fs/usage/{path}
: Directory usage analysis
Network Resources
linux://network/interfaces
: Network interfaceslinux://network/connections
: Network connectionslinux://network/stats
: Network statisticslinux://network/ping/{host}
: Ping a hostlinux://network/traceroute/{host}
: Trace route to a hostlinux://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.
Recommended Servers
Crypto Price & Market Analysis MCP Server
A Model Context Protocol (MCP) server that provides comprehensive cryptocurrency analysis using the CoinCap API. This server offers real-time price data, market analysis, and historical trends through an easy-to-use interface.
MCP PubMed Search
Server to search PubMed (PubMed is a free, online database that allows users to search for biomedical and life sciences literature). I have created on a day MCP came out but was on vacation, I saw someone post similar server in your DB, but figured to post mine.
dbt Semantic Layer MCP Server
A server that enables querying the dbt Semantic Layer through natural language conversations with Claude Desktop and other AI assistants, allowing users to discover metrics, create queries, analyze data, and visualize results.
mixpanel
Connect to your Mixpanel data. Query events, retention, and funnel data from Mixpanel analytics.

Sequential Thinking MCP Server
This server facilitates structured problem-solving by breaking down complex issues into sequential steps, supporting revisions, and enabling multiple solution paths through full MCP integration.

Nefino MCP Server
Provides large language models with access to news and information about renewable energy projects in Germany, allowing filtering by location, topic (solar, wind, hydrogen), and date range.
Vectorize
Vectorize MCP server for advanced retrieval, Private Deep Research, Anything-to-Markdown file extraction and text chunking.
Mathematica Documentation MCP server
A server that provides access to Mathematica documentation through FastMCP, enabling users to retrieve function documentation and list package symbols from Wolfram Mathematica.
kb-mcp-server
An MCP server aimed to be portable, local, easy and convenient to support semantic/graph based retrieval of txtai "all in one" embeddings database. Any txtai embeddings db in tar.gz form can be loaded
Research MCP Server
The server functions as an MCP server to interact with Notion for retrieving and creating survey data, integrating with the Claude Desktop Client for conducting and reviewing surveys.