🛠️ mcp-micro-shell
An ultra-lightweight, secure, and high-performance MCP server providing isolated file operations and shell execution capabilities.
Fully optimized with a flat python layout, powered by uv, and ready for global execution via uvx.
🌟 Key Features
- ⚡ Lightning Fast Startup: Built entirely with a simplified flat package structure, executing instantly with
uvvirtual environments. - 🛡️ Hardened Sandboxed Security: All terminal runs and file read/writes are strictly sandboxed inside your designated workspace directory (
MCP_MICRO_SHELL_WORKSPACE), robustly defending against directory traversal (../) attacks. - 🔌 Multi-Transport System:
- Stdio (Default): High-speed JSON-RPC stdio transport for local desktop clients (Cursor, Claude Desktop, cl0w, etc.).
- SSE (Server-Sent Events): High-performance SSE HTTP server using Starlette and Uvicorn for remote connections.
- ⚙️ Zero Stdout Pollution: Redirects all internal engine logs exclusively to
stderr, keeping thestdoutchannel completely pristine for JSON-RPC messages.
📂 Simplified Architecture
Optimized down to a minimalist, highly cohesive Python package layout:
mcp-micro-shell/
├── pyproject.toml # Build backend configuration (Hatchling)
├── README.md # English Documentation
├── README.ko.md # Korean Documentation
├── uv.lock # Lock file
└── mcp_micro_shell/ # Primary python package
├── __init__.py # Version declaration
├── __main__.py # Module runner (python -m)
└── server.py # Unified server engine & tool bindings
🛠️ Provided Tools
All tools automatically resolve relative paths against the designated workspace root and validate boundaries.
| Tool Name | Parameters | Description |
|---|---|---|
execute_command |
command (str, req),cwd (str, opt),timeout (int, opt) |
Safely executes terminal commands inside the workspace (or a sub-folder inside it). Inherits system PATH for full CLI tool access. |
get_current_directory |
None | Returns the active workspace path boundary. |
read_file |
path (str, req) |
Reads text files safely, verifying boundary constraints. Blocks out-of-boundary paths. |
write_file |
path (str, req),content (str, req) |
Writes text files safely, auto-creating subfolders inside the workspace boundary. Blocks out-of-boundary paths. |
🚀 Getting Started
Installation
You can install and run the server globally from PyPI using uv:
# Install globally
uv tool install mcp-micro-shell
# Or run instantly without installation
uvx mcp-micro-shell
Prerequisites
Make sure you have uv installed. If you don't, run:
Windows:
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
macOS/Linux:
curl -LsSf https://astral.sh/uv/install.sh | sh
🏃 Running the Server
1. Stdio Mode (Default)
Ideal for standard JSON-RPC desktop AI integrations.
uvx mcp-micro-shell
(For local development in the cloned repository, you can use uv run mcp-micro-shell instead).
2. SSE Mode (Web API)
Ideal for remote integrations. Runs an HTTP SSE server.
uvx mcp-micro-shell --transport sse --host 127.0.0.1 --port 8000
🔌 Integrating with MCP Clients (mcp.json)
To use this server inside AI clients (like Claude Desktop, Cursor, cl0w), configure your client config as follows:
{
"mcpServers": {
"mcp-micro-shell": {
"command": "uvx",
"args": [
"mcp-micro-shell"
],
"env": {
"MCP_MICRO_SHELL_WORKSPACE": "C:\\path\\to\\your\\workspace"
}
}
}
}
(No need to clone or point to local directories. uvx will automatically download, update, and launch the server directly from PyPI).
Metadata
Release files for mcp-micro-shell 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| mcp_micro_shell-0.1.1.tar.gz | 35.5 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mcp_micro_shell-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 41.9 kB
Release files / mcp_micro_shell-0.1.1.tar.gz
| Download URL | mcp_micro_shell-0.1.1.tar.gz |
|---|---|
| Size | 35.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
64227163251333c72046a2834c5cf57ade14655881ad211eabad4d94f0597f1d
|
|
BLAKE2b-256 checksum How to use checksums |
ed7ed97ff9ceb220a1083f1d2b38cf9c95a54d25a00cabc4eb8607ff7787256f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / mcp_micro_shell-0.1.1-py3-none-any.whl
| Download URL | mcp_micro_shell-0.1.1-py3-none-any.whl |
|---|---|
| Size | 6.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c8e0247a4911771bdf1c1f2f9b8065cf2622805bc0fbd5fb1db6dd137bf971ea
|
|
BLAKE2b-256 checksum How to use checksums |
278d061784ca225c87805b50c0e6e4e7707335c3b46e032ebb04038da34b3b4e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Security for mcp-micro-shell 0.1.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.