๐ฅ๏ธ Shell MCP Server
@blazickjp
Secure shell command execution MCP server for Claude AI. Enables controlled shell access within specified directories.
Overview
What is ๐ฅ๏ธ Shell MCP Server?
A Model Context Protocol server that adds secure shell command execution to AI applications. It allows developers to run shell commands (bash, sh, cmd, powershell) in restricted directories, integrating safely with AI assistants like Claude.
How to use ๐ฅ๏ธ Shell MCP Server?
Install via pip install shell-mcp-server or uv pip install shell-mcp-server. Configure by specifying allowed directories and shell executable paths as command-line arguments. Integrate with Claude Desktop by adding a JSON entry to its config. Invoke the execute_command tool with command, shell, and cwd parameters.
Key features of ๐ฅ๏ธ Shell MCP Server
- Secure execution restricted to specified directories only
- Multiple shell support: bash, sh, cmd, powershell
- Configurable timeout control for long-running commands
- Cross-platform compatibility (Unix and Windows)
- Built-in directory and shell validation for safety
Use cases of ๐ฅ๏ธ Shell MCP Server
- List files, search patterns, and perform basic file operations
- Run git commands and package management tasks
- Monitor system resource usage and process information
- Search file content with grep and process data with awk
- Execute Windows-specific commands via PowerShell or cmd
FAQ from ๐ฅ๏ธ Shell MCP Server
What shells are supported?
bash, sh, cmd, and powershell are supported. Shells are configured via the --shell argument with name and path.
How do I set the command timeout?
Set the COMMAND_TIMEOUT environment variable (in seconds). The default timeout is 30 seconds.
What security measures are in place?
Commands run only in allowed directories, only configured shells can be used, all commands have a timeout, working directory traversal is prevented, and commands run with the same permissions as the server process.
Is ๐ฅ๏ธ Shell MCP Server cross-platform?
Yes, it works on both Unix and Windows systems.
How do I integrate with Claude Desktop?
Add a block to your Claude Desktop config that specifies the uv command, the path to the server, allowed directories, and shell configurations.