Shell MCP Server
Simple Model Context Protocol (MCP) server that exposes a single terminal tool for running shell commands.
Prerequisites
Python 3.11+
uv or
pip
Installation
Usage
Run the server over stdio:
The server registers a terminal tool. Invoke it with an object shaped like:
Command output is returned as MCP TextContent. Errors are surfaced with a prefixed Error: message.
Resource
This server exposes a resource:
ID:
mcpreadme://desktopReturns the contents of
mcpreadme.mdresolved from OneDrive Desktop.
Resolution order:
$OneDrive/Desktop/mcpreadme.md~/OneDrive/Desktop/mcpreadme.md~/Desktop/mcpreadme.md
If the file is missing or unreadable, a textual error message is returned.
Docker
Build and run with uv inside the container (per uv Docker guide):
This image installs uv from the official image and uses:
Dependency caching layers via
uv sync --no-install-projectFinal run command equivalent to local:
uv run main.py
Reference: uv Docker integration docs: Installing a project
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
Enables execution of shell commands through a terminal tool and provides access to a custom readme file from OneDrive Desktop or local Desktop directory.