Linux MCP

io.github.Mohabdo21Published by GitHub account Mohabdo21v0.3.0Updated Nov 6, 2026

Linux MCP server for real-time system monitoring - CPU, memory, disk, network, processes, Docker.

Overview

AI-generated overview

A local Linux monitoring MCP server that lets an assistant inspect CPU, memory, disk, network, processes, Docker, services, security and hardware in real time.

What you can do
  • Read system, CPU, memory, disk, network and hardware metrics, including a single-call system snapshot
  • List and sort running processes, open file descriptors, connections and listening ports
  • Inspect Docker containers, images, networks, volumes and container stats
  • Check systemd units, timers, crontab and cron jobs, plus installed packages and available updates
  • Audit security posture: sessions, failed logins, SELinux/AppArmor, firewall, SSH, SUID and world-writable files
  • Read /proc diagnostics, man pages, SMART and RAID health, and expose system data as MCP resources
When to use it
Useful when you want an assistant to diagnose or report on a Linux machine it runs on: checking load, disk pressure, failing services, container state, pending updates or security findings without typing commands yourself.
Requirements
Runs as a local process on Linux over STDIO, launched by an MCP client. Install a pre-built binary, use go install, or build from source with Go 1.27+. Docker is optional and only needed for Docker tools. Optional config file at ~/.config/linux-mcp/config.json or via LINUX_MCP_CONFIG; network access is used for ping and IP geolocation.
Before you install
It exposes host diagnostics to the connected client, and the README warns that logs and labels in diagnostic output can contain sensitive data, so grant access only to trusted clients. Some tools reach external services (ip-api.com for IP geolocation) and run network probes. Docker responses omit environment values and raw command arguments, but other output may still reveal system details.

Installation

In SourceWeft

  1. Open Linux MCP in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

linux-mcp - Linux MCP Server

A Linux system monitoring server built on the Model Context Protocol (MCP). Provides real-time system information - CPU, memory, disk, network, processes, Docker, and more - via MCP tools over STDIO transport.

[MCP Registry] [linux-mcp MCP server] [GitHub Downloads (all assets, all releases)] [Linux MCP on mcprush]

[linux-mcp demo]

Features

  • System - hostname, OS, kernel, architecture, uptime, load averages
  • CPU - usage, model, frequency, core counts, temperature sensors
  • Memory - RAM and swap usage with percentages
  • Disk - per-partition usage, inodes, mount options, largest files, block devices
  • Network - interface stats, active connections, listening ports, DNS, ping, IP geolocation & ASN lookup
  • Processes - running processes sorted by CPU or memory, open file descriptors per process
  • Docker - containers, images, networks, volumes, disk usage, system info, and container stats
  • Services & automation - systemd units, service status, user timers, crontab, system cron jobs
  • Security - active user sessions, failed login detection, SELinux/AppArmor status, firewall/SSH/SUID/world-writable audit with security score
  • Packages - installed packages and available updates (pacman, dpkg, rpm/dnf, apk)
  • Hardware - GPU info, PCI/USB bus devices, power/battery analytics
  • Desktop session - Wayland/X11 protocol, DE identifiers, runtime config
  • Storage health - RAID status, logrotate configuration, time synchronization, SMART disk health, per-device I/O metrics
  • System health - comprehensive health assessment with memory, disk, load, and systemd checks
  • /proc diagnostics - deep /proc inspection: interrupts, softirqs, vmstat, diskstats, filesystems, kernel version, slabinfo
  • Man pages - system manual pages for any installed command
  • Snapshot - comprehensive system overview in a single call
  • MCP Resources - system data also accessible as readable resources

Prerequisites

  • Go 1.27+ (to build from source)
  • Linux (the server targets Linux; some tools use Linux-specific paths)
  • Docker (optional - only needed for Docker tools)

Installation

Via MCP Registry

Discover the server on the MCP Registry and install via your MCP client (VS Code one-click install, or manual config).

Download pre-built binary

Download the latest binary from the GitHub Releases page:

bash
curl -LO https://github.com/Mohabdo21/linux-mcp/releases/latest/download/linux-mcpchmod +x linux-mcp

A fully static build (no libc dependency) is also available as linux-mcp_static.

Via go install

bash
go install github.com/Mohabdo21/linux-mcp@latest

The binary is placed in $GOPATH/bin/ (typically ~/go/bin/).

Build from source

bash
git clone https://github.com/Mohabdo21/linux-mcp.gitcd linux-mcpmake build

The binary is placed at bin/linux-mcp.

For a fully static binary (no libc dependency):

bash
make build-static

Usage

The server communicates over STDIO transport, following the MCP standard. It is designed to be launched by an MCP client (e.g., Claude Desktop, Claude Code, Codex, OpenCode, or any MCP host).

Running directly

bash
./bin/linux-mcp

This starts the server and listens for MCP requests on STDIN/STDOUT.

Integration

OpenCode

Add the following to your OpenCode configuration:

json
{  "mcp": {    "linux-mcp": {      "type": "local",      "command": ["/path/to/linux-mcp"],      "enabled": true    }  }}
Claude Code

Add the server via the CLI:

bash
claude mcp add linux-mcp -- /path/to/linux-mcp

To scope it to all your projects instead of just the current one:

bash
claude mcp add linux-mcp --scope user -- /path/to/linux-mcp

Or create a .mcp.json file in your project root for team-shared configuration:

json
{  "mcpServers": {    "linux-mcp": {      "type": "stdio",      "command": "/path/to/linux-mcp"    }  }}

Verify the connection inside a Claude Code session with /mcp.

Codex

Add the server via the CLI:

bash
codex mcp add linux-mcp -- /path/to/linux-mcp

Or add it manually to ~/.codex/config.toml (or .codex/config.toml for project-scoped config):

toml
[mcp_servers.linux-mcp]command = "/path/to/linux-mcp"

Verify the connection with codex mcp list.

Tools and resources

65 tools and 19 resources covering system, CPU, memory, disk, network, processes, Docker, security, packages, hardware, and more.

Full tool and resource reference

Configuration

The server can be configured via a JSON file loaded from ~/.config/linux-mcp/config.json or the LINUX_MCP_CONFIG environment variable.

json
{  "log_level": "info",  "timeouts": {    "get_system_snapshot": "60s",    "ping_host": "5s"  },  "disabled": []}
FieldDescription
log_levelOne of debug, info, warn, error (default: info)
timeoutsPer-tool timeout overrides as Go duration strings
disabledTool names to disable, including their resource and aggregate collector paths

Invalid configuration prevents startup. The server also handles SIGHUP to reload the configuration file at runtime without restarting; a failed reload retains the last valid configuration. Disabled collectors are skipped by aggregate tools and reported in their errors.

Docker diagnostic responses omit environment values and raw command arguments, including image-history commands. Other diagnostic content, such as logs and labels, can still contain sensitive data; grant access only to trusted clients.

MCP Registry

Published on the MCP Registry as io.github.Mohabdo21/linux-mcp.

License

Dependencies

Source: README.md at commit c802a4d

Tools

0
SourceWeft started this package once in an isolated sandbox, without credentials, to list its tools. That failed: the package type cannot run in the sandbox.

Version history

4
  1. v0.3.0LatestNov 6, 2026
  2. v0.2.18Oct 11, 2026
  3. v0.2.17Sep 29, 2026
  4. v0.2.15Sep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts