Shell Executor
Execute shell commands safely on a remote server.
Shell Executor MCP Server
A Model Context Protocol (MCP) server that provides safe shell command execution capabilities for AI agents and tools like VS Code Copilot.
Features
- Safe Command Execution: Whitelist-based command filtering
- Comprehensive Tool Set: Support for file operations, text processing, development tools, and system utilities
- MCP Compatible: Full Model Context Protocol support
- Easy Integration: Simple JSON-RPC interface over stdio
Installation
Option 1: Direct Usage
git clone https://github.com/yourusername/shell-executor-mcp.git
cd shell-executor-mcp
pip install -e .
Option 2: Install from PyPI (when published)
pip install shell-executor-mcp
VS Code Integration
1. Global Configuration
Add to your VS Code settings.json or MCP configuration:
{
"mcpServers": {
"shell-executor": {
"command": "python",
"args": ["/path/to/shell-executor-mcp/src/mcp_server.py"],
"env": {
"MCP_API_TOKEN": "your-secret-token"
}
}
}
}
2. Workspace Configuration
Create .vscode/mcp_servers.json in your workspace:
{
"shell-executor": {
"command": "python",
"args": ["${workspaceFolder}/path/to/mcp_server.py"],
"env": {
"MCP_API_TOKEN": "your-secret-token"
}
}
}
3. Using with VS Code Copilot
Once configured, Copilot can discover and use the shell executor through MCP:
@shell-executor execute ls -la
@shell-executor execute git status
@shell-executor execute cargo build
Manual Testing
Start the server:
python src/mcp_server.py
Send test requests:
- Initialize:
{"jsonrpc": "2.0", "id": 1, "method": "initialize", "params": {"protocolVersion": "2024-11-05", "capabilities": {}, "clientInfo": {"name": "test", "version": "1.0.0"}}}
- List tools:
{"jsonrpc": "2.0", "id": 2, "method": "tools/list", "params": {}}
- Execute command:
{"jsonrpc": "2.0", "id": 3, "method": "tools/call", "params": {"name": "execute_command", "arguments": {"command": "echo", "args": ["Hello World"]}}}
Supported Commands
File System
ls,cat,head,tail,find,tree,wc,du,dffile,stat,pwd
Text Processing
grep,sed,awk,sort,uniq,cut,tr
Development
git,npm,yarn,pip,python,node,cargo,makerustc,go,java,javac
System Info
ps,uptime,whoami,id,uname,which
Network
curl,wget,ping,dig,nslookup
Archives
tar,zip,unzip,gzip,gunzip
Utilities
echo,date,cal,bc,expr,basename,dirname- Hash tools:
md5,sha256sum,shasum
Security
- Commands are filtered through a whitelist
- 30-second execution timeout
- No destructive operations (rm, mv, cp) allowed
- No privilege escalation (sudo, su) allowed
- Environment variables can be controlled
Configuration
Set environment variables:
MCP_API_TOKEN: Authentication token (default: "MYSECRET")
License
MIT License - see LICENSE file for details.
関連サーバー
Scout Monitoring MCP
スポンサーPut performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
スポンサーAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
POX MCP Server
An MCP server for the POX SDN controller, enabling network control, management, and analysis using Python and OpenFlow.
Harness
Access and interact with Harness platform data, including pipelines, repositories, logs, and artifact registries.
AI Studio MCP Server
Integrates with Google AI Studio/Gemini API for PDF to Markdown conversion and content generation.
Percepta MCP Server
An AI-driven platform for frontend semantic cognition and automation.
Playwright MCP Explorer
An intelligent tool that uses MCP to autonomously explore websites and generate Playwright tests from natural language descriptions.
MCP Think Tool Server
An MCP server implementing the 'think' tool to improve Claude's complex reasoning capabilities.
LSP MCP Server
Integrates with Language Server Protocol (LSP) to provide features like code completion, diagnostics, and hover information.
lu-mcp-server
Verify AI agent communication with session types and formal proofs
MCP Docs Provider
Provides documentation context to LLMs from local markdown files via MCP.
Swagger/Postman MCP Server
Ingests and serves Swagger/OpenAPI specifications and Postman collections as MCP tools. Requires a config.json for API and authentication setup.