{
  "markdown": "# linux-mcp - Linux MCP Server\n\nA Linux system monitoring server built on the [Model Context Protocol (MCP)](https://modelcontextprotocol.io). Provides real-time system information - CPU, memory, disk, network, processes, Docker, and more - via MCP tools over STDIO transport.\n\n[![MCP Registry](https://img.shields.io/badge/MCP%20Registry-linux--mcp-000?style=flat-square&logo=github)](https://registry.modelcontextprotocol.io) [![linux-mcp MCP server](https://glama.ai/mcp/servers/Mohabdo21/linux-mcp/badges/score.svg)](https://glama.ai/mcp/servers/Mohabdo21/linux-mcp)\n\n<p align=\"center\">\n  <img src=\"assets/demo.gif\" alt=\"linux-mcp demo\" width=\"100%\">\n</p>\n\n## Features\n\n- **System** - hostname, OS, kernel, architecture, uptime, load averages\n- **CPU** - usage, model, frequency, core counts, temperature sensors\n- **Memory** - RAM and swap usage with percentages\n- **Disk** - per-partition usage, inodes, mount options, largest files, block devices\n- **Network** - interface stats, active connections, listening ports, DNS, ping, IP geolocation & ASN lookup\n- **Processes** - running processes sorted by CPU or memory, open file descriptors per process\n- **Docker** - containers, images, networks, volumes, disk usage, system info, stats for all containers, system snapshot\n- **Services & automation** - systemd units, service status, user timers, crontab, system cron jobs\n- **Security** - active user sessions, failed login detection, SELinux/AppArmor status, firewall/SSH/SUID/world-writable audit with security score\n- **Packages** - installed packages and available updates (pacman, dpkg)\n- **Hardware** - GPU info, PCI/USB bus devices, power/battery analytics\n- **Desktop session** - Wayland/X11 protocol, DE identifiers, runtime config\n- **Storage health** - RAID status, logrotate configuration, time synchronization, SMART disk health, per-device I/O metrics\n- **System health** - comprehensive health assessment with memory, disk, load, and systemd checks\n- **/proc diagnostics** - deep /proc inspection: interrupts, softirqs, vmstat, diskstats, filesystems, kernel version, slabinfo\n- **Man pages** - system manual pages for any installed command\n- **Snapshot** - comprehensive system overview in a single call\n- **MCP Resources** - system data also accessible as readable resources\n\n## Prerequisites\n\n- **Go 1.27+** (to build from source)\n- **Linux** (the server targets Linux; some tools use Linux-specific paths)\n- **Docker** (optional - only needed for Docker tools)\n\n## Installation\n\n### Via MCP Registry\n\nDiscover the server on the [MCP Registry](https://registry.modelcontextprotocol.io) and install via your MCP client (VS Code one-click install, or manual config).\n\n### Download pre-built binary\n\nDownload the latest binary from the [GitHub Releases](https://github.com/Mohabdo21/linux-mcp/releases) page:\n\n```bash\ncurl -LO https://github.com/Mohabdo21/linux-mcp/releases/latest/download/linux-mcp\nchmod +x linux-mcp\n```\n\nA fully static build (no libc dependency) is also available as `linux-mcp_static`.\n\n### Build from source\n\n```bash\ngit clone https://github.com/Mohabdo21/linux-mcp.git\ncd linux-mcp\nmake build\n```\n\nThe binary is placed at `bin/linux-mcp`.\n\nFor a fully static binary (no libc dependency):\n\n```bash\nmake build-static\n```\n\n## Usage\n\nThe 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).\n\n### Running directly\n\n```bash\n./bin/linux-mcp\n```\n\nThis starts the server and listens for MCP requests on STDIN/STDOUT.\n\n### Integration\n\n<details>\n<summary><h4>OpenCode</h4></summary>\n\nAdd the following to your OpenCode configuration:\n\n```json\n{\n  \"mcp\": {\n    \"linux-mcp\": {\n      \"type\": \"local\",\n      \"command\": [\"/path/to/linux-mcp\"],\n      \"enabled\": true\n    }\n  }\n}\n```\n\n</details>\n\n<details>\n<summary><h4>Claude Code</h4></summary>\n\nAdd the server via the CLI:\n\n```bash\nclaude mcp add linux-mcp -- /path/to/linux-mcp\n```\n\nTo scope it to all your projects instead of just the current one:\n\n```bash\nclaude mcp add linux-mcp --scope user -- /path/to/linux-mcp\n```\n\nOr create a `.mcp.json` file in your project root for team-shared configuration:\n\n```json\n{\n  \"mcpServers\": {\n    \"linux-mcp\": {\n      \"type\": \"stdio\",\n      \"command\": \"/path/to/linux-mcp\"\n    }\n  }\n}\n```\n\nVerify the connection inside a Claude Code session with `/mcp`.\n\n</details>\n\n<details>\n<summary><h4>Codex</h4></summary>\n\nAdd the server via the CLI:\n\n```bash\ncodex mcp add linux-mcp -- /path/to/linux-mcp\n```\n\nOr add it manually to `~/.codex/config.toml` (or `.codex/config.toml` for project-scoped config):\n\n```toml\n[mcp_servers.linux-mcp]\ncommand = \"/path/to/linux-mcp\"\n```\n\nVerify the connection with `codex mcp list`.\n\n</details>\n\n### Tools and resources\n\n69 tools and 19 resources covering system, CPU, memory, disk, network, processes, Docker, security, packages, hardware, and more.\n\n**[Full tool and resource reference](docs/tools.md)**\n\n## Configuration\n\nThe server can be configured via a JSON file loaded from `~/.config/linux-mcp/config.json` or the `LINUX_MCP_CONFIG` environment variable.\n\n```json\n{\n  \"log_level\": \"info\",\n  \"timeouts\": {\n    \"get_system_snapshot\": \"60s\",\n    \"ping_host\": \"5s\"\n  },\n  \"disabled\": []\n}\n```\n\n| Field       | Description                                               |\n| ----------- | --------------------------------------------------------- |\n| `log_level` | One of `debug`, `info`, `warn`, `error` (default: `info`) |\n| `timeouts`  | Per-tool timeout overrides as Go duration strings         |\n| `disabled`  | List of tool names to disable at startup                  |\n\nThe server also handles **SIGHUP** to reload the configuration file at runtime without restarting.\n\n## MCP Registry\n\nPublished on the [MCP Registry](https://registry.modelcontextprotocol.io) as `io.github.Mohabdo21/linux-mcp`.\n\n## License\n\n- [MIT](./LICENSE)\n\n## Dependencies\n\n- [modelcontextprotocol/go-sdk](https://github.com/modelcontextprotocol/go-sdk) - MCP SDK for Go\n- [shirou/gopsutil/v4](https://github.com/shirou/gopsutil) - System metrics (CPU, memory, disk, network, processes, sensors)\n- [docker/go-sdk](https://github.com/docker/go-sdk) - Docker Engine API client\n- [moby/moby/client](https://github.com/moby/moby) - Docker client library\n- [ip-api.com](https://ip-api.com) - Free IP geolocation API (used by `get_ip_info`)\n",
  "bytes": 6405,
  "sha": "49a155e49281fc5fdb25fad1f96ae6a764ab76fd01de2b287292d10205986075",
  "repo_slug": "mohabdo21/linux-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_mohabdo21_linux_mcp_c55062ed/readme"
}