mcp-ssh-tool
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| LOG_LEVEL | No | Logging level (error, warn, info, debug) | |
| KNOWN_HOSTS_PATH | No | Custom known_hosts file path | |
| SSH_DEFAULT_KEY_DIR | No | Custom SSH key directory | |
| STRICT_HOST_KEY_CHECKING | No | Enable strict host key checking |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
| resources | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| ssh_open_sessionC | Opens a new SSH session with authentication |
| ssh_close_sessionC | Closes an SSH session |
| proc_execC | Executes a command on the remote system |
| proc_sudoC | Executes a command with sudo privileges |
| fs_readA | Reads a file from the remote system |
| fs_writeC | Writes data to a file on the remote system |
| fs_statC | Gets file or directory statistics |
| fs_listB | Lists directory contents |
| fs_mkdirpA | Creates directories recursively |
| fs_rmrfB | Removes files or directories recursively |
| fs_renameC | Renames or moves a file/directory |
| ensure_packageC | Ensures a package is installed or removed |
| ensure_serviceC | Ensures a service is in the desired state |
| ensure_lines_in_fileB | Ensures specific lines are present or absent in a file |
| patch_applyB | Applies a patch to a file |
| os_detectC | Detects operating system and environment information |
| ssh_list_sessionsB | Lists all active SSH sessions with their details |
| ssh_pingB | Checks if an SSH session is still alive and responsive |
| ssh_list_configured_hostsA | Lists all hosts configured in ~/.ssh/config |
| ssh_resolve_hostA | Resolves a host alias from ~/.ssh/config to connection parameters |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 20 tools
Each tool has a clear, distinct purpose. SSH session management, filesystem operations, system administration, and execution tools are all well-separated with no overlapping responsibilities.
Most tools follow a domain prefix pattern (ssh_, fs_, proc_, ensure_) with verb_noun structure. Minor inconsistency: patch_apply lacks a prefix, and os_detect is less descriptive, but overall pattern is clear.
20 tools is well-suited for the domain of SSH remote management, covering session lifecycle, file operations, package/service management, and execution without being overwhelming.
The tool set covers core SSH management tasks comprehensively. Minor gaps exist (e.g., file permissions, user management), but these are beyond the typical scope of an SSH toolkit.