MCP SSH Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| NODE_NO_WARNINGS | No | Set to 1 to suppress Node.js warnings, as shown in the configuration example. | 1 |
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 | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| ssh_connectA | Connect to a remote server via SSH. Pass profile or host with a Host alias from ~/.ssh/config, or provide host/username/key directly. |
| ssh_list_connectionsA | List active SSH connections and Host entries from ~/.ssh/config. Call this when the user mentions a server by name (e.g. "beta server") to find the right connectionId. |
| ssh_read_fileA | Read and return the contents of a file on a remote server. Use this when the user asks to explain, analyze, review, or show a file from a server. Requires an active SSH connection. |
| ssh_execA | Execute a read-only or safe command on the remote server. Destructive commands are blocked (rm, mv, chmod, systemctl, kill, firewall tools, SQL DROP/DELETE/ALTER/TRUNCATE, and similar). Use ssh_read_file to read files instead of cat. |
| ssh_upload_fileB | Upload a file to the remote server |
| ssh_download_fileB | Download a file from the remote server to a local path |
| ssh_list_filesB | List files in a directory on the remote server |
| ssh_disconnectB | Close an SSH connection |
| ubuntu_nginx_controlC | Control Nginx web server on Ubuntu |
| ubuntu_update_packagesC | Update system packages on Ubuntu |
| ubuntu_ssl_certificateC | Manage SSL certificates using Let's Encrypt on Ubuntu |
| ubuntu_website_deploymentC | Deploy website files and create backups on Ubuntu |
| ubuntu_ufw_firewallC | Manage Ubuntu Uncomplicated Firewall (UFW) |
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 13 tools
Each tool targets a distinct operation: connection management, file transfer, file reading, command execution, and specific Ubuntu admin tasks. The descriptions clearly differentiate between reading a file and executing a command, and between downloading and reading.
General SSH tools follow a consistent ssh_verb_noun pattern (e.g., ssh_list_files, ssh_upload_file), but Ubuntu tools mix patterns: some are noun_verb (ubuntu_nginx_control) and others are noun phrases without a verb (ubuntu_ssl_certificate, ubuntu_website_deployment). This creates two inconsistent naming conventions within the same server.
13 tools is well within the ideal range, covering both core SSH operations and a reasonable set of Ubuntu server management tasks without being overwhelming.
The SSH operations cover connect/disconnect, file transfer, file listing/reading, and safe command execution, which is quite complete. The Ubuntu tools cover common web server management tasks (Nginx, SSL, deployment, firewall, updates), though a few extras like user management or service restart could be missing but are not critical gaps.