Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
PORTNoCompatibility alias for SSH_MCP_HTTP_PORT.
SSH_MCP_DEBUGNoEnables debug-oriented configuration behavior.false
KNOWN_HOSTS_PATHNoCompatibility alias for SSH_MCP_KNOWN_HOSTS_PATH.
SSH_MCP_HTTP_HOSTNoStreamable HTTP bind host.127.0.0.1
SSH_MCP_HTTP_PORTNoStreamable HTTP bind port.3000
SSH_MCP_RATE_LIMITNoEnables the global MCP request rate limiter.true
SSH_MCP_POLICY_FILENoJSON file containing partial policy overrides.
SSH_MCP_POLICY_MODENoPolicy decision mode: enforce or explain.enforce
SSH_MCP_SESSION_TTLNoSession time-to-live in milliseconds.900000
SSH_MCP_COMMAND_DENYNoCommand deny patterns.
SSH_MCP_MAX_SESSIONSNoMaximum concurrent SSH sessions.20
SSH_MCP_OAUTH_ISSUERNoExpected OAuth issuer.
SSH_MCP_TOOL_PROFILENoActive tool exposure profile.full
SSH_MCP_ALLOWED_HOSTSNoHost allowlist for policy and remote connector safety checks.
SSH_MCP_COMMAND_ALLOWNoCommand allow patterns.
SSH_MCP_MAX_FILE_SIZENoMaximum bytes returned by text-focused file reads.10485760
SSH_MCP_ALLOW_RAW_SUDONoAllows raw proc_sudo; prefer ensure_* tools.false
SSH_MCP_HTTP_AUTH_MODENoHTTP auth mode: bearer or oauth.bearer
SSH_MCP_OAUTH_AUDIENCENoExpected OAuth audience.
SSH_MCP_OAUTH_JWKS_URLNoOAuth JWKS URL.
SSH_MCP_OAUTH_RESOURCENoOAuth protected resource identifier.
SSH_MCP_RATE_LIMIT_MAXNoMaximum requests per rate-limit window.100
SSH_MCP_ALLOWED_CIPHERSNoOptional SSH cipher allowlist.
SSH_MCP_COMMAND_TIMEOUTNoDefault remote command timeout in milliseconds.30000
SSH_MCP_HOST_KEY_POLICYNoHost-key mode: strict, accept-new, or insecure.strict
SSH_MCP_HTTP_PUBLIC_URLNoStable public HTTPS MCP URL for protected resource metadata.
SSH_MCP_STRICT_HOST_KEYNoLegacy boolean alias for strict vs insecure host-key checking.
SSH_MCP_ALLOW_ROOT_LOGINNoAllows SSH login as root and mirrors into policy.false
SSH_MCP_HTTP_TRUST_PROXYNoTrust reverse proxy forwarded headers.false
SSH_MCP_KNOWN_HOSTS_PATHNoKnown hosts file used for strict host-key verification.~/.ssh/known_hosts
STRICT_HOST_KEY_CHECKINGNoCompatibility alias for SSH_MCP_HOST_KEY_POLICY.
SSH_MCP_CONNECTOR_PROFILENoAlias for SSH_MCP_TOOL_PROFILE.full
SSH_MCP_ENABLE_LEGACY_SSENoEnables legacy SSE compatibility.false
SSH_MCP_HTTP_MAX_SESSIONSNoMaximum active Streamable HTTP MCP sessions.20
SSH_MCP_MAX_STREAM_CHUNKSNoMaximum retained streaming chunks.4096
SSH_MCP_TUNNEL_DENY_PORTSNoOptional tunnel port denylist.
SSH_MCP_MAX_TRANSFER_BYTESNoMaximum upload or download transfer size.52428800
SSH_MCP_PATH_DENY_PREFIXESNoRemote path prefixes denied by filesystem policy./etc/sudoers,/etc/shadow,/etc/passwd,/boot,/dev,/proc
SSH_MCP_TUNNEL_ALLOW_PORTSNoOptional tunnel port allowlist.
SSH_MCP_PATH_ALLOW_PREFIXESNoRemote path prefixes allowed by filesystem policy./tmp,/var/tmp,/home,/Users
SSH_MCP_ALLOW_DESTRUCTIVE_FSNoAllows destructive filesystem operations such as fs_rmrf.false
SSH_MCP_HTTP_ALLOWED_ORIGINSNoBrowser origins allowed for HTTP clients.http://127.0.0.1,http://localhost
SSH_MCP_MAX_FILE_WRITE_BYTESNoMaximum accepted write payload before buffering.10485760
SSH_MCP_RATE_LIMIT_WINDOW_MSNoRate-limit window in milliseconds.60000
SSH_MCP_OAUTH_REQUIRED_SCOPESNoRequired OAuth scopes.ssh-mcp-pro.read
SSH_MCP_HTTP_BEARER_TOKEN_FILENoBearer token file for HTTP transport. Required for non-loopback bearer deployments.
SSH_MCP_RATE_LIMIT_PER_SESSIONNoEnables per-session MCP request rate limiting when tool arguments include sessionId.true
SSH_MCP_TUNNEL_DENY_BIND_HOSTSNoLocal bind hosts denied for tunnels.0.0.0.0,::
SSH_MCP_TUNNEL_ALLOW_BIND_HOSTSNoLocal bind hosts allowed for tunnels.127.0.0.1,localhost,::1
SSH_MCP_HTTP_SESSION_IDLE_TTL_MSNoHTTP MCP session idle timeout in milliseconds.900000
SSH_MCP_LOCAL_PATH_DENY_PREFIXESNoLocal paths denied for transfer operations.
SSH_MCP_MAX_COMMAND_OUTPUT_BYTESNoMaximum buffered stdout/stderr bytes per command result.1048576
SSH_MCP_OAUTH_ALLOWED_ALGORITHMSNoOptional comma-separated JWT algorithm allowlist.
SSH_MCP_TUNNEL_DENY_REMOTE_HOSTSNoOptional remote tunnel target host denylist.
SSH_MCP_LOCAL_PATH_ALLOW_PREFIXESNoLocal paths allowed for transfer operations.OS temp directory
SSH_MCP_TUNNEL_ALLOW_REMOTE_HOSTSNoOptional remote tunnel target host allowlist.
SSH_MCP_ALLOW_DESTRUCTIVE_COMMANDSNoAllows commands matching destructive command policy.false
SSH_MCP_CONNECTOR_DEFAULT_USERNAMENoDefault username for connector broker flows.
SSH_MCP_RATE_LIMIT_PER_SESSION_MAXNoMaximum requests per SSH session per rate-limit window.50
SSH_MCP_HTTP_MAX_REQUEST_BODY_BYTESNoMaximum HTTP request body size.1048576
SSH_MCP_CONNECTOR_CREDENTIAL_COMMANDNoExternal credential command when provider is command.
SSH_MCP_REMOTE_AGENT_MCP_PASSTHROUGHNoWhen enabled with 1, true, yes, or on, lets /mcp requests bypass the remote control plane.
SSH_MCP_CONNECTOR_CREDENTIAL_PROVIDERNoCredential provider: none, agent, or command.none
SSH_MCP_RATE_LIMIT_PER_SESSION_WINDOW_MSNoPer-session rate-limit window in milliseconds.60000
SSH_MCP_CONNECTOR_CREDENTIAL_COMMAND_ARGSNoArguments passed to the external credential command.
SSH_MCP_CONNECTOR_CREDENTIAL_COMMAND_TIMEOUT_MSNoCredential command timeout in milliseconds.5000

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{}
prompts
{}
resources
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
connector_statusA

Use this when ChatGPT or Claude needs to understand the remote connector profile, authentication mode, and credential broker readiness without exposing secrets.

ssh_hosts_listA

Use this when ChatGPT or Claude needs a safe list of SSH host aliases that may be inspected through the remote connector. Sensitive login material is omitted.

ssh_policy_explainA

Use this when ChatGPT or Claude needs to explain whether a requested SSH inspection or mutation would be allowed. This is explain-only and does not execute commands or open tunnels.

ssh_host_inspectA

Use this when ChatGPT or Claude needs read-only host inspection through the server-side credential broker. The user supplies only a configured host alias and selected checks; no secret material or login details are accepted.

ssh_mutation_planA

Use this when ChatGPT or Claude needs a non-executing plan for a remote SSH change. It never runs commands, writes files, uploads data, starts tunnels, or escalates privileges.

ssh_open_sessionB

Opens a new SSH session with authentication

ssh_close_sessionB

Closes an SSH session

ssh_list_sessionsA

Lists all active SSH sessions with their details

ssh_pingA

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

proc_execA

Executes a non-interactive command on the remote system after policy and safety checks

proc_sudoA

Executes a command with sudo privileges only when allowRawSudo policy permits it

proc_listA

Lists running processes on the remote system sorted by CPU usage

proc_killB

Sends a signal to a running process by PID

proc_exec_streamB

Executes a command and returns streaming output chunks

fs_readB

Reads a file from the remote system

fs_writeA

Writes data to a file on the remote system

fs_statB

Gets file or directory statistics

fs_listA

Lists directory contents

fs_mkdirpA

Creates directories recursively

fs_rmrfA

Removes files or directories recursively

fs_renameB

Renames or moves a file/directory

ensure_packageB

Ensures a package is installed or removed

ensure_serviceA

Ensures a service is in the desired state

ensure_lines_in_fileA

Ensures specific lines are present or absent in a file

patch_applyB

Applies a patch to a file

os_detectA

Detects operating system and environment information

get_metricsA

Returns server metrics including session counts, command statistics, and uptime

service_listA

Lists all systemd services and their current state

service_statusB

Gets the status of a systemd service

service_logsA

Reads recent journal logs for a systemd service

service_restartB

Restarts a systemd service

service_stopA

Stops a systemd service

disk_usageA

Reports disk usage for filesystems on the remote system

memory_infoA

Reports memory usage on the remote system

cpu_usageA

Reports CPU load average and uptime on the remote system

net_interfacesA

Lists network interfaces and their IP addresses on the remote system

port_checkB

Checks which processes are listening on a specific port

log_tailA

Tails the end of a log file or reads recent journal entries for a service

file_uploadA

Uploads a local file to the remote host over SFTP

file_downloadA

Downloads a remote file to the local machine over SFTP

tunnel_local_forwardC

Creates a local SSH port forward

tunnel_remote_forwardB

Creates a remote SSH port forward

tunnel_closeB

Closes an active tunnel

tunnel_listA

Lists active tunnels, optionally filtered by session

Prompts

Interactive templates invoked by user choice

NameDescription
safe-connectOpen an SSH session using strict host-key verification and explain the safety posture.
inspect-host-capabilitiesDetect OS, package manager, init system, SFTP availability, and active policy.
plan-mutationUse explain mode and policy resources to summarize a risky remote change first.
managed-config-changeRead a config, produce a minimal patch, dry-run it, and apply only if policy allows it.

Resources

Contextual data attached and managed by the client

NameDescription
Active SSH sessionsCurrent in-memory SSH sessions tracked by the session manager
Metrics snapshotCurrent runtime metrics in JSON format
Prometheus metricsPrometheus-formatted metrics export
Configured SSH hostsParsed host aliases from the local ~/.ssh/config cache
Effective safety policyCurrent command, path, host, and privilege policy after env/file overrides
Recent audit eventsRecent policy and high-risk operation audit events
Support matrixSupported and experimental host capabilities for this server

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/oaslananka/ssh-mcp-pro'

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