About Lcu Server
Lcu Server is an MCP server published by guolisen in the Developer Tools category.
The repository has 9 stars and 2 forks, with the last commit a year ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.
Install
git clone https://github.com/guolisen/mcp_lcu_serverThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Tools (55)
analyze_cpu_performanceAnalyze CPU performance
Parameters not published.
analyze_hardwareAnalyze hardware configuration
Parameters not published.
analyze_memory_performanceAnalyze memory performance
Parameters not published.
analyze_networkAnalyze network configuration and connectivity
Parameters not published.
analyze_storage_usageAnalyze storage usage
Parameters not published.
analyze_system_performanceAnalyze system performance
Parameters not published.
analyze_top_processesAnalyze top processes by CPU and memory usage
Parameters not published.
check_system_healthCheck system health
Parameters not published.
copy_fileCopy a file or directory
Parameters not published.
delete_fileDelete a file or directory
Parameters not published.
Show all 55 tools
download_file_from_urlDownload a file from a URL
Parameters not published.
get_cpu_infoGet CPU information
Parameters not published.
get_cpu_usageGet CPU usage percentage
Parameters not published.
get_disk_usageGet disk usage
Parameters not published.
get_load_averageGet system load average
Parameters not published.
get_memory_infoGet memory information
Parameters not published.
get_memory_usageGet memory usage
Parameters not published.
get_network_connectionsGet network connections
Parameters not published.
get_network_interfacesGet network interfaces information
Parameters not published.
get_network_statsGet network statistics
Parameters not published.
get_pci_devicesGet PCI device information
Parameters not published.
get_process_infoGet detailed information about a process
Parameters not published.
get_storage_infoGet storage information
Parameters not published.
get_swap_infoGet swap information
Parameters not published.
get_system_infoGet general system information
Parameters not published.
get_system_loadGet system load
Parameters not published.
get_system_statusGet system status
Parameters not published.
get_system_uptimeGet system uptime
Parameters not published.
get_usb_devicesGet USB device information
Parameters not published.
http_get_requestPerform HTTP GET request
Parameters not published.
list_directoryList contents of a directory
Parameters not published.
list_disksList physical disks
Parameters not published.
list_partitionsList disk partitions
Parameters not published.
list_processesList all processes
Parameters not published.
log_analyze_logsAnalyze logs to identify patterns and issues
Parameters not published.
log_get_application_logsGet logs for a specific application
Parameters not published.
log_get_audit_logsGet audit logs
Parameters not published.
log_get_boot_logsGet boot logs
Parameters not published.
log_get_dmesgGet kernel logs from dmesg
Parameters not published.
log_get_journal_logsGet logs from the systemd journal
Parameters not published.
log_get_service_status_logsGet logs related to a specific systemd service
Parameters not published.
log_get_statisticsGet statistics about log volume and characteristics
Parameters not published.
log_get_system_logsGet logs from system log files
Parameters not published.
log_list_available_logsList all available log sources on the system
Parameters not published.
log_search_logsSearch across multiple log sources
Parameters not published.
monitor_resourcesMonitor resource usage
Parameters not published.
move_fileMove a file or directory
Parameters not published.
ping_hostPing a host
Parameters not published.
read_fileRead file contents
Parameters not published.
search_file_contentsSearch for files containing a pattern
Parameters not published.
search_filesSearch for files matching a pattern
Parameters not published.
search_processesSearch for processes
Parameters not published.
traceroute_hostTrace route to a host
Parameters not published.
upload_file_to_urlUpload a file to a URL
Parameters not published.
write_fileWrite content to a file
Parameters not published.
Ask AI
Ask AI about Lcu Server
Powered by Claude · Grounded in docs
Security checks
- ✓README presentThe repository ships documentation.
5 checks have not been run yet.
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.
- Log Operations: Access to system logs, log analysis, and statistics across multiple sources.
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:
uv venv source .venv/bin/activate python -m build
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: []
logs:
# Custom log paths (optional)
paths:
# syslog: /var/log/syslog
# auth: /var/log/auth.log
max_entries: 1000 # Maximum entries to return
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
Log Tools
log_list_available_logs: List all available log sources on the systemlog_get_journal_logs: Get logs from the systemd journallog_get_system_logs: Get logs from system log fileslog_get_dmesg: Get kernel logs from dmesglog_get_application_logs: Get logs for a specific applicationlog_get_audit_logs: Get audit logslog_get_boot_logs: Get boot logslog_get_service_status_logs: Get logs related to a specific systemd servicelog_search_logs: Search across multiple log sourceslog_analyze_logs: Analyze logs to identify patterns and issueslog_get_statistics: Get statistics about log volume and characteristics
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
Log Resources
linux://logs/available: List of available log sourceslinux://logs/journal/{parameters}: Logs from systemd journallinux://logs/system/{log_type}/{parameters}: Logs from system log fileslinux://logs/kernel/{count}: Logs from kernel ring buffer (dmesg)linux://logs/application/{app_name}/{parameters}: Logs for specific applicationslinux://logs/audit/{parameters}: Logs from the Linux audit systemlinux://logs/boot/{count}: Logs related to system bootlinux://logs/service/{service}/{count}: Logs for specific systemd serviceslinux://logs/search/{query}/{parameters}: Search across multiple log sourceslinux://logs/analysis/{parameters}: Analysis of log patterns and issueslinux://logs/statistics/{parameters}: Statistics about log volume and characteristics
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
Command Execution Security
The server includes a powerful command execution tool that allows running shell commands on the host system. This feature can pose significant security risks if not properly configured or if used in untrusted environments.
Warning: If you don't want to use the command execution functionality, you have two options:
- Disable it by setting
command.enabled: falsein your configuration file:command: enabled: false - Remove the MCP tools related to command execution by modifying your server implementation.
When command execution is enabled, consider these additional security measures:
- Use
allowed_commandsto restrict which commands can be executed - Use
blocked_commandsto explicitly block dangerous commands - Set appropriate timeouts and output size limits
- Disable sudo access with
allow_sudo: falseunless absolutely necessary
License
This project is licensed under the MIT License - see the LICENSE file for details.
README copy captured when this server was indexed; it may lag the repository. The original is authoritative.