Skip to content

MCP Box

Highly isolated Linux container environments optimized specifically for mcp-servers. Secure AI agent tool execution.

Install

$git clone https://github.com/lowcache/mcp-box

Install command taken from the project's README or registry entry. Always review code before running it.

mcp-box

Your AI agent's tools run with your permissions. When an MCP server can call run_command or write files, a buggy prompt or a malicious instruction can reach your home directory, your SSH keys, and your cloud credentials. mcp-box puts every MCP server inside a locked-down Docker sandbox with a read-only root filesystem, explicit writable mounts, dropped Linux capabilities, and per-profile network policy. Only the folders you mount are writable; the rest of your host stays out of reach.

mcp-box is the boringly reliable way to run MCP servers safely: inspectable, reproducible, and default-deny by design.

mcp-box is a single, portable Go binary that launches turnkey, immutable, strictly-isolated container sandboxes for Model Context Protocol (MCP) servers. Nix is used for deterministic image builds when present, but it is entirely optional. Without Nix, mcp-box pulls the same pinned OCI image definitions from GHCR and runs them under the same Docker isolation model. Docker is the only hard requirement.

Same server, same hardening, same sandbox boundary — only the image source changes.

Security Audit Checks

You can audit the sandbox boundary directly by overriding the container command with -- bash -c '...'. These checks prove the boundary itself, not just the MCP server running inside it. The hardening (read-only root, no network, dropped capabilities, host UID mapping) applies to any process in the box:

  1. Read-only filesystem — writes outside /workspace are rejected:
    ./mcp-box run shell -- bash -c 'touch /etc/naughty'
    # => touch: cannot touch '/etc/naughty': Read-only file system   (exit 1)
    
  2. Network isolation — with the default --network none, DNS/egress fail:
    ./mcp-box run shell -- bash -c 'curl -I https://google.com'
    # => curl: (6) Could not resolve host: google.com               (exit 6)
    
  3. No privilege escalation — sudo is not even present in the image:
    ./mcp-box run shell -- bash -c 'sudo -l'
    # => bash: line 1: sudo: command not found                       (exit 127)
    
  4. Host UID/GID mapping — the process is you, not root:
    ./mcp-box run shell -- bash -c 'id'
    # => uid=<your uid> gid=<your gid> ...   (files in /workspace are owned by you)
    

Key Features

Similar plugs

The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

Java 面试 & 后端通用面试指南,覆盖计算机基础、数据库、分布式、高并发、系统设计与 AI 应用开发

Build Agentic workflows, RAG pipelines, with rich AI model and tool support on one collaborative workspace. Deploy on cloud, VPC, or self-hosted, so teams move from prototype…

A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io

Explore related