Skip to main content
Glama
gilberth

mcp-ssh-multi

by gilberth

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
MCP_PORTNoHTTP server port8086
LOG_LEVELNoLogging levelINFO
SSH_TIMEOUTNoDefault command timeout (seconds)30
MCP_SECRET_PATHNoHTTP endpoint path (use a secret value)/mcp
SSH_SERVERS_FILENoPath to servers configssh_servers.yaml

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

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
ssh_list_serversA

List all configured SSH servers with connection status.

Returns server names, hosts, usernames, descriptions, and whether each server currently has an active connection.

EXAMPLES:

  • List all servers: ssh_list_servers()

ssh_disconnectA

Disconnect from a specific SSH server.

Closes the active SSH connection to the named server. The connection will be re-established automatically on next command.

EXAMPLES:

  • Disconnect: ssh_disconnect("proxmox")

ssh_executeA

Execute a command on a remote SSH server.

Runs the given shell command on the specified server and returns stdout, stderr, and exit code. Connections are established automatically and reused.

EXAMPLES:

  • Run command: ssh_execute("proxmox", "uptime")

  • With timeout: ssh_execute("truenas", "zpool status", timeout=60)

ssh_uploadA

Upload a local file to a remote server via SFTP. Use this tool (NOT scp via ssh_execute) to transfer files FROM the local machine TO a remote SSH server. For server-to-server transfers, download from source first, then upload to destination.

ssh_downloadA

Download a file from a remote server to the local machine via SFTP. Use this tool (NOT scp via ssh_execute) to transfer files FROM a remote SSH server TO the local machine.

ssh_file_existsA

Check if a file or directory exists on a remote server.

Returns existence status, type (file/directory), size, and permissions.

EXAMPLES:

  • ssh_file_exists("proxmox", "/etc/pve/qemu-server/100.conf")

ssh_list_dirA

List contents of a remote directory.

Returns file names, types, sizes, and permissions. Supports pagination with limit/offset for large directories.

EXAMPLES:

  • ssh_list_dir("truenas", "/mnt/data")

  • ssh_list_dir("proxmox") # lists home directory

  • ssh_list_dir("proxmox", "/var/log", limit=50, offset=100)

ssh_read_fileA

Read a text file from a remote server.

Returns the file contents as a string. For binary or large files, use ssh_download instead.

EXAMPLES:

  • ssh_read_file("proxmox", "/etc/hostname")

  • ssh_read_file("truenas", "/var/log/messages", max_size=5000000)

ssh_write_fileA

Write content to a file on a remote server.

Creates or overwrites the file with the given content.

EXAMPLES:

  • ssh_write_file("proxmox", "/tmp/test.txt", "Hello World")

ssh_tail_logA

Tail a log file on a remote server.

Returns the last N lines of the specified log file.

EXAMPLES:

  • ssh_tail_log("proxmox")

  • ssh_tail_log("truenas", "/var/log/messages", lines=100)

ssh_process_listA

List running processes on a remote server.

Returns process list sorted by CPU usage. Optionally filter by name.

EXAMPLES:

  • ssh_process_list("proxmox")

  • ssh_process_list("truenas", filter_name="zfs")

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
get_servers_resourceList of configured SSH servers and their details.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/gilberth/mcp-ssh-multi'

If you have feedback or need assistance with the MCP directory API, please join our Discord server