mcp-shell-server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ALLOW_COMMANDS | No | Comma-separated list of commands that are allowed to be executed (e.g., 'ls,cat,pwd,grep,wc,touch,find') | |
| ALLOWED_COMMANDS | No | Alias for ALLOW_COMMANDS - comma-separated list of commands that are allowed to be executed |
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
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| shell_executeA | Execute an allowed command as an argv array on the MCP server host. Allowed commands run with the server process's OS authority; the allowlist controls executable names, not what an allowed program does. Allowed commands: ls, wc, cat, pwd, grep Allowed patterns: Default timeout: 30s; maximum timeout: 300s; output cap: 1048576 bytes |
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 1 tool
There is only one tool, so there is no possibility of selecting the wrong tool. Its purpose—executing an allowlisted command as an argv array—is clearly stated.
The single tool name shell_execute follows a clear snake_case verb_noun pattern. With only one tool there is no inconsistency to introduce.
A single tool can be defensible for a narrowly scoped shell executor, but by broad MCP standards one tool is thin. It earns its place, yet there is no separate tool for listing allowed commands or validating inputs.
The tool covers the core action of running allowlisted commands with timeout and output caps. However, it lacks utilities for discovering the allowlist or managing configuration, and the read-only command set (ls, wc, cat, pwd, grep) limits broader shell workflows.