linux-ssh-mcp-server
Provides tools for managing Docker containers and services on remote Linux hosts via SSH.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
linux-ssh-mcp-server
A Linux MCP server for remote administration over SSH. Diagnose, inspect, and manage any Linux host from Cursor, Claude Code, Codex, or any MCP (Model Context Protocol) client. Connects using per-user AD credentials elicited at runtime. Passwords live only in server memory with an idle TTL and are never logged.
45+ tools: filesystem, systemd services, Docker, JBoss/WildFly discovery and log search, network, certificates, firewall, and more
Per-user AD identity: each request carries an
X-AD-Userheader; the password is either supplied via the optionalX-AD-Passwordheader (no prompt) or elicited once and cached in-memoryOptional sudo elevation: privileged commands require an explicit
elevate_sudocall; the sudo password is prompted, or reusesX-AD-Passwordwhen suppliedZero secrets on disk: no credentials in config files, env vars, or logs
Example prompts
"Why is the disk almost full on
host1? What's eating the space?""The
myappservice keeps crashing, check the journal logs and tell me why.""Grep the JBoss server log for OutOfMemory errors from today."
"Which process is listening on port 8443?"
"Is the TLS certificate on
host1:443close to expiry?""Tail the logs of the
nginxDocker container.""Restart the
httpdservice and confirm it came back up."
Related MCP server: CommandBridge MCP
Tools
Session
Tool | Description |
| Open an SSH session to a Linux host and return a |
| Close an active SSH session |
| List active SSH sessions with usage details |
| Enable sudo for the session (password prompted once, cached in memory) |
Filesystem (read-only)
Tool | Description |
| List files with permissions, owner, size, and mtime |
| Recursively find files by name pattern |
| Read file contents as numbered lines via SFTP streaming |
| Grep for text in a file or recursively across a directory |
| JSON metadata for a file or directory |
| Unified-style diff of two files |
System diagnostics (read-only)
Tool | Description |
| OS, kernel, uptime, RAM, CPU count, timezone |
| Disk space for all mounted filesystems |
| Disk usage by directory, largest first |
| Processes sorted by CPU or memory |
| CPU load, memory, swap, disk I/O, top processes |
| systemd services summary or full status detail |
| systemd journal: service failures, crashes, system events |
| Kernel ring buffer: OOM kills, I/O errors, hardware faults |
| File-descriptor usage ("too many open files" diagnosis) |
| Active TCP connections with owning process |
| Interfaces, routing table, DNS servers |
| ICMP ping or TCP port test from the remote host |
| DNS resolution from the remote server's perspective |
| Environment variables, optionally filtered |
| User crontab and system cron directories |
| User accounts with recent logins |
| Permissions, ownership, and POSIX ACLs |
| TLS certificate details and days until expiry (file or endpoint) |
| firewalld or iptables rules |
Docker & JBoss (read-only)
Tool | Description |
| Containers, logs, inspect, stats, and images |
| Discover running JBoss EAP/WildFly JVMs and their paths |
| Search JBoss/WildFly logs for errors with filename context |
Write operations (all require user confirmation)
Tool | Description |
| Manage systemd services with before/after state |
| Force-kill a process by PID |
| File operations (no overwrite unless requested) |
|
|
| Delete with metadata/size shown in the prompt |
| Create or extract |
| HTTP request from the remote server via curl |
Quick Start
docker compose -f docker-compose.yml -p linux-ssh-mcp up -d --build --force-recreateClient setup
X-AD-User is required. X-AD-Password is optional: omit it and the server prompts for the password once via MCP elicitation, caching it in memory.
Cursor (mcp.json)
{
"mcpServers": {
"linux-ssh-mcp": {
"type": "http",
"url": "http://localhost:8006/mcp",
"headers": {
"X-AD-User": "<your-ad-username>",
"X-AD-Password": "<your-ad-password>"
}
}
}
}Claude Code
claude mcp add --transport http linux-ssh-mcp http://localhost:8006/mcp \
--header "X-AD-User: <your-ad-username>" \
--header "X-AD-Password: <your-ad-password>"Codex (~/.codex/config.toml)
[mcp_servers.linux-ssh-mcp]
url = "http://localhost:8006/mcp"
http_headers = { "X-AD-User" = "<your-ad-username>", "X-AD-Password" = "<your-ad-password>" }Any other MCP client works the same way: point it at the streamable HTTP endpoint and pass the headers.
This server cannot be deployed
Maintenance
Related MCP Connectors
Termalin's hosted MCP server. Claude, ChatGPT or any MCP client runs commands, moves files over SFTP, queries databases and reads server metrics and monitoring alerts on your servers, keylessly through Termalin Connectors: no SSH key is handed over and no inbound port is opened. Per-host command policy and an audit log. Needs a termal.in Pro or Team account (new accounts start with a 14-day Pro trial).
Remote MCP server exposing your Node Command fleet (files, shell, processes, browser) to AI hosts.
Scoped, audited SSH exec, sessions, and SFTP on your saved servers without exposing credentials
Remote.It hosted MCP: inventory devices, open connections, manage services and run scripts.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables MCP-compatible AI clients to remotely manage a Linux server via SSH, supporting file operations, Docker control, Git pulls, and arbitrary command execution.8,785 npmMIT
- FlicenseAqualityBmaintenanceCross-platform MCP server for policy-controlled command execution on Linux and Windows, with no SSH dependency.3-
- AlicenseNot gradedqualityBmaintenanceA local MCP server for inspecting and operating Linux VPS deployments through restricted SSH.2MIT
- AlicenseNot gradedqualityBmaintenanceEnables managing multiple Linux SSH servers from MCP clients, with structured filesystem operations, shell commands, durable long-running jobs, process listing, and CPU/RAM/disk/GPU status.MIT