mcp_linux_ssh
Runs commands on remote Linux machines via SSH, enabling management and automation tasks.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp_linux_sshrun 'df -h' on the web server"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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:
{
"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
Available Tools
6 toolsget_cpu_infoCPU informationCRead-only
Get detailed information about system CPUs
| Name | Required | Description | Default |
|---|---|---|---|
| host | Yes |
get_disk_infoDisk informationCRead-only
Get details about the system filesystems and free space
| Name | Required | Description | Default |
|---|---|---|---|
| host | Yes |
get_processesGet running processBRead-only
List all processes on a system sorted in descending order by CPU
| Name | Required | Description | Default |
|---|---|---|---|
| host | Yes |
get_service_statusService statusBRead-only
Get details on a systemd unit
| Name | Required | Description | Default |
|---|---|---|---|
| host | Yes | ||
| unit | Yes |
run_sshRun SSHC
This command could make changes to the system. Care should be taken to not disable ssh or modify files such as /etc/sudoers, etc/password, or /etc/shadow so as to render tho system inaccessible.
It can use sudo but should not prompt for password input. The sudo settings shoould allow passwordless sudo on the remote machine.
When using systemctl, make sure to add --no-pager to prevent the command from hanging.
| Name | Required | Description | Default |
|---|---|---|---|
| host | Yes | ||
| command | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
run_ssh_read_onlyRun SSH read onlyB
Only run commands that would not make changes to the system. sudo is not allowed.
When using systemctl, make sure to add --no-pager to prevent the command from hanging.
| Name | Required | Description | Default |
|---|---|---|---|
| host | Yes | ||
| command | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
6 tool updates
v0.0.1- First observed
get_cpu_info - First observed
get_disk_info - First observed
get_processes - First observed
get_service_status - First observed
run_ssh - First observed
run_ssh_read_only
TDQS
Scored across 6 tools
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.
All tool names follow a consistent snake_case pattern: informational tools use 'get_' prefix and execution tools use 'run_' prefix, making the set predictable.
Six tools cover the essential operations for a Linux SSH management server—information gathering and command execution—without being excessive or sparse.
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
Related MCP Connectors
Manage servers through SSH.
Securely control computers you explicitly pair through files, terminals, processes, screenshots, desktop UI/input, clipboard, browser automation, diagnostics, and document tools.
Control your authorized Windows computers via OAuth: files, shell, apps, and task status.
Work on your own computers from Claude or ChatGPT: run commands, edit and search files.
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables SSH connectivity and remote command execution on servers, allowing users to test connections and run commands remotely with support for both local networks and public servers.225 npm1ISC
- AlicenseNot gradedqualityDmaintenanceEnables remote execution of Linux commands via SSH, supporting system monitoring, file operations, and secure authentication with configurable safety controls.4MIT
- AlicenseBqualityDmaintenanceEnables secure remote and local command execution via SSH, with session management and environment variable support.116 npm3MIT
- FlicenseNot gradedqualityDmaintenanceEnables managing Linux servers via SSH with tools for command execution, file operations, service management, and log analysis.-