mcp-shell-sudo
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| WORK_DIR | No | Optional working directory. Empty or unset allows working from any existing directory. When set, the server enters strict mode, confines local filesystem writes to WORK_DIR using Bubblewrap, and rejects local sudo and all SSH execution. | |
| PASSWORD_SUDO | No | Password used for local sudo. Also fallback password for remote sudo when PASSWORD_SUDO_SSH is not configured. Empty or unset means local sudo uses sudo -n and remote sudo uses sudo -n unless PASSWORD_SUDO_SSH is set. | |
| ALLOW_COMMANDS | No | Comma-separated list of executable names allowed. Empty or unset allows all executables. When set, only exact executable names from the list are allowed, invoked by name rather than path. For ssh_execute, both ssh and the remote target executable must be in the list. | |
| PASSWORD_SUDO_SSH | No | Optional password override used only for sudo on remote hosts executed through ssh_execute. If unset, PASSWORD_SUDO is used. If neither is set, remote sudo uses sudo -n. Not an SSH login password. |
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 |
|---|---|
| shell_executeA | Execute one command as an argv array. Args: command: Executable and arguments, for example ["ls", "-la"] or ["sudo", "systemctl", "status", "ssh"]. Shell syntax is not interpreted. stdin: Optional text sent to the command's standard input. directory: Optional working directory. With WORK_DIR configured, this path must resolve inside WORK_DIR. Without WORK_DIR, any existing directory may be used. timeout: Execution timeout in seconds. Values above 600 seconds are capped at 600. Returns: stdout, stderr, exit status, execution time, timeout flag, and output-limit flag. |
| shell_configA | Return the effective non-secret shell policy configuration. |
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 2 tools
The two tools have completely distinct purposes: one executes commands and the other returns configuration. There is no overlap or potential for misselection between them.
Both tools follow the same snake_case verb_noun pattern (shell_execute, shell_config). The naming is clear, predictable, and consistent.
With only two tools, this server feels thin, but the narrow scope (shell execution and configuration) justifies the limited surface. It is at the lower edge of what is reasonable, as stated in the calibration.
The tool surface covers the core functionality of executing shell commands and retrieving configuration. There is no obvious missing operation for the stated purpose; the only minor gap might be a way to list allowed commands or test, but that is not essential.