ssh-utils
About
MCP Server featuring multiple SSH related utilities
Details
- Author
- GrahamJenkins
- Downloads
- 287
- Categories
- Developer Tools
Jump to
- Executes remote commands via SSH over MCP.
- Supports only key-based authentication (no passwords).
- Configurable multiple server profiles in one file.
- Connection parameters can be overridden per command.
- Compatible with Roo Code and any MCP client.
- Configuration file loads from several standard locations.
Place the configuration file (ssh-utils-servers.json) in the current working directory, workspace root, or the global config directory (~/.config/ssh-utils/). Then invoke the execute_ssh_command tool from an MCP client, specifying the command and optionally overriding connection parameters.
ssh-utils
Purpose
ssh-utils is a Model Context Protocol (MCP) server that allows you to execute terminal commands on a remote server via SSH. It is designed to be used as a tool within Roo Code or any MCP-compatible client, enabling secure, key-based SSH command execution from your development environment.
How It Works
- The server exposes a tool called execute_ssh_command via the MCP protocol.
- When invoked, it connects to a remote server using SSH and runs the specified command.
- Credentials and connection details are loaded from a configuration file (ssh-utils-servers.json), which can be placed in:
- The current working directory
- The workspace root
- The global config directory: ~/.config/ssh-utils/ssh-utils-servers.json
- If multiple profiles are present in the config, the first is used by default, or you can specify a profile by name.
- Any tool arguments (such as user, host, or server) override the config file values.
Configuration File
The configuration file is a JSON file named ssh-utils-servers.json with the following structure:
{
"profiles": {
"default": {
"host": "example.com",
"user": "bob",
"port": 22,
"privateKeyPath": "/home/bob/.ssh/id_ed25519"
},
"work": {
"server": "workhost",
"user": "alice"
}
}
}
- host or server: The SSH hostname or IP address.
- user: The SSH username.
- port: (Optional) The SSH port (default: 22).
- privateKeyPath: (Optional) Path to the private key file.
Usage
1. Place your ssh-utils-servers.json config file in one of the supported locations.
2. Use the execute_ssh_command tool from Roo Code or another MCP client, specifying the command and (optionally) overriding any connection parameters.
Security
- Password-based SSH authentication is explicitly prohibited for security reasons. Only key-based authentication is supported.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.





