Skip to main content
Glama
samdoran

mcp_linux_ssh

by samdoran
README.md
# MCP Server to run commands over SSH #

⚠️ This is an early prototype. Use at your own risk. ⚠️

## Getting started ###

```
python -m venv .venvs/mcp
.venvs/mcp/bin/python -m pip install -e .
```

Run the MCP server with `.venvs/mcp/bin/mcp-linux-ssh`

To have an MCP client run the application, point it at `realpath .venvs/mcp/bin/mcp-linux-ssh`.

Here's an example configuration for Claude Desktop:

```json
{
    "mcpServers": {
        "linux_ssh": {
            "command": "/Users/sdoran/Developer/mcp_linux_ssh/.venvs/mcp/bin/mcp-linux-ssh",
            "env": {
                "TMPDIR": "/tmp"
            }
        }
    }
}
```

### Create a standalone executable ###

Use [`shiv`][] to create portable executable.

```
mkdir build
shiv -o build/mcp_linux_ssh --console-script mcp-linux-ssh .
```

### Logging ###

Commands and the hosts they are run on are logged to a local file that is rotated once it reaches five megabytes in size. The file location depends on the platform running the MCP server.

**Linux**: `~/.local/share/logs/mcp-linux-ssh.log`

**macOS**: `~/Library/Logs/mcp-linux-ssh.log`


[`shiv`]: https://shiv.readthedocs.io/en/latest/

TDQS

B3.3/5.0

Scored across 6 tools

Disambiguation5/5

Each tool targets a distinct system resource or action. The two command execution tools are clearly separated by read-only vs. writable behavior, eliminating ambiguity.

Naming Consistency5/5

All tool names follow a consistent snake_case pattern: informational tools use 'get_' prefix and execution tools use 'run_' prefix, making the set predictable.

Tool Count5/5

Six tools cover the essential operations for a Linux SSH management server—information gathering and command execution—without being excessive or sparse.

Completeness4/5

The set covers CPU, disk, processes, services, and generic command execution. Missing memory or network info, but the core diagnostic and action capabilities are present.

Maintenance

ActivityInactive
ResponsivenessNo issues