Awesome MCP › Desktop Automation
tumf/mcp-shell-server
⭐ 192
Python
added to this list on 2025-05-06
repository created 2024-12-10
MCP Shell Server is a Python Model Context Protocol server that lets a client execute shell commands on the host, restricted to an explicit allowlist and hardened against the usual ways such a facility is abused. Commands are supplied as an argv array and run through subprocess without shell-string interpretation, and pipelines keep their argv segments separate and validated rather than being handed to a shell. A request may include stdin text, a working directory, and a timeout; the response returns stdout, stderr, exit status and execution time. Redirection targets for input, output and append must stay inside the requested working directory, the server enforces a default timeout, a maximum timeout and an output byte cap, and the directory argument, when omitted or relative, resolves against the working directory of the server process rather than the client. The allowlist is set with the ALLOW_COMMANDS environment variable, also accepted as ALLOWED_COMMANDS, as a comma-separated list, and ALLOW_PATTERNS accepts full-match regular expressions over command names only, rejecting patterns containing whitespace or shell metacharacters. Beyond the allowlist the server applies argument hardening before creating a process, rejecting known execution vectors such as find -exec, interpreter and shell launchers, awk system calls, tar checkpoint actions, env, xargs, wrappers like timeout, nice and nohup, shell-escape capable tools like sed, less, vim and ssh, common alternate binary names, and every git -c override or persistent git config alias write. The documentation is explicit that this is defence in depth and not a sandbox, and advises running the server inside an OS or container sandbox for untrusted clients. Child processes receive only a minimal environment, extended solely by names listed in MCP_SHELL_CHILD_ENV_ALLOWLIST, and every invocation emits one redacted structured audit event covering success, rejection, timeout, output cap or process error.
https://github.com/tumf/mcp-shell-server
shellcommand-executionsecurityallowlistsandboxingaudit-loggingpythonmcp-server
Also in Desktop Automation
UI-TARS Desktop is a cross-platform GUI Agent application that uses a vision-language model to enable natural language control of computers with precise visual recognition and real-time feedback, integrating Model Context Protocol tools for advanced multimodal AI-driven automation.
Docker-Android packages Android emulators in Docker with VNC access, ADB control and log sharing for app testing, plus a beta MCP server image that exposes emulator control to AI agents.
Desktop Commander MCP is an MCP server for Claude that integrates AI with terminal control, file system search, and file editing capabilities, enabling advanced desktop automation and development workflows.
Windows-MCP is a lightweight, open-source MCP server that enables seamless integration and automation between AI agents using LLMs and the Windows operating system, supporting a wide range of UI interactions and system controls.
Peekaboo is a macOS-only MCP server and CLI tool that enables AI agents to capture and analyze screenshots with AI vision models for visual question answering and automation.
ios-simulator-mcp is an MCP server enabling AI-driven interaction, control, and inspection of iOS simulators for automated UI testing and quality assurance.
Terminator is an open-source automation tool for Windows that leverages the Model Context Protocol to enable AI-driven desktop and browser automation with high reliability and speed.
CodeRunner is an MCP server that securely executes AI-generated code locally on macOS using Apple's container technology, enabling private and efficient processing of local files with remote LLMs.