ssh-mcp-server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SSH_MCP_CONFIG | No | Use a custom OpenSSH config path | |
| SSH_MCP_KNOWN_HOSTS | No | Use a custom known_hosts path | |
| SSH_MCP_ALLOW_UNKNOWN_HOSTS | No | Set to 1 to temporarily allow unknown hosts; not recommended |
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 | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| ssh_list_serversA | 列出 ~/.ssh/config 中可供 MCP 使用的显式 Host 别名。 |
| ssh_checkB | 连接服务器并返回用户、主机名和系统内核信息。 |
| ssh_executeA | 执行任意远程命令;命令可能改变服务器状态,调用前必须确认意图。 |
| ssh_uploadB | 通过 SFTP 上传文件;目标已存在时可能被覆盖。 |
| ssh_downloadA | 通过 SFTP 下载文件;本地目标已存在时可能被覆盖。 |
| ssh_start_jobC | 启动可持续运行的远程任务,适用于模型下载和推理。 |
| ssh_job_statusA | 查询后台任务状态、进程组、退出码和受限的末尾日志。 |
| ssh_job_listC | 列出远程任务目录中的任务及状态摘要。 |
| ssh_cancel_jobA | 终止后台任务;超过等待时间后强制结束。 |
| ssh_job_cleanupA | 删除已完成任务的脚本、日志和状态文件。 |
| ssh_file_progressB | 采样远程文件大小;至少调用两次才能计算增长速度。 |
| ssh_gpu_statusA | 结构化返回 NVIDIA GPU 显存、利用率、温度和功耗。 |
| ssh_system_statusB | 返回服务器负载、内存和磁盘概况。 |
| ssh_service_statusC | 读取 systemd 服务状态。 |
| ssh_service_controlB | 启动、停止、重启或重载 systemd 服务。 |
| ssh_read_journalB | 读取指定 systemd 服务的 journal 日志。 |
| ssh_tunnel_startA | 创建仅监听 127.0.0.1 的本地端口转发。 |
| ssh_tunnel_listA | 列出当前 MCP 进程创建的活动隧道。 |
| ssh_tunnel_stopB | 停止当前 MCP 进程中的指定隧道。 |
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 19 tools
Most tools have clearly distinct purposes (execute, upload, service control, tunnel management), but ssh_check and ssh_system_status both report host health, and ssh_job_status versus ssh_job_list overlap in querying jobs. Descriptions help disambiguate, but the boundaries aren't perfectly sharp.
All names use snake_case with a consistent ssh_ prefix and mostly a verb-first pattern (list, execute, start, cancel). However, ssh_service_control and ssh_file_progress deviate from the verb-noun structure, creating minor inconsistency.
19 tools is on the higher end but justified by the broad scope covering execution, file transfer, job lifecycle, services, monitoring, and tunnels. The count feels slightly heavy but each tool serves a distinct area without redundancy.
The toolset provides strong lifecycle coverage for jobs, services, files, and tunnels, plus system and GPU monitoring. Minor gaps like remote directory listing or file deletion are absent but workaroundable, so core workflows are well-supported.