Cloud Sandbox MCP
Provides ChatGPT with a persistent, VM-like Linux engineering workstation inside Docker, with root access, development tools, and a private nested Docker daemon.
README
Cloud Sandbox MCP 0.2.0 — Workstation Mode
A private MCP server that gives ChatGPT a persistent, VM-like Linux engineering workstation inside Docker.
Each workspace has:
- root access and
apt-get; - Node.js 22, npm/corepack, Python 3, pip/venv, and
uv; - Chromium and Playwright-compatible browser runtime;
- a private nested Docker daemon with Docker Compose;
- persistent repository, home directory, caches, cloud CLI configuration, and nested Docker state;
- Git operations, tests, builds, services, databases, and local Kubernetes tooling through the terminal;
- no host Docker socket inside the workstation.
The outer MCP controller still uses the host Docker socket to create and manage workstation containers. The workstation receives a private Docker daemon, not the host socket.
Upgrade from 0.1.x
cd ~/Downloads
unzip cloud-sandbox-mcp-v0.2.0-workstation.zip
cd cloud-sandbox-mcp-v0.2.0-workstation
cp ../cloud-sandbox-mcp-v0.1.3/.env .env
./scripts/setup.sh
./scripts/upgrade-workspaces.sh
The upgrade script preserves every workspace's:
repo/home/- new
docker/data directory
It replaces only the runtime container.
Verify the workstation
From ChatGPT, run in a workspace:
id
node --version
python3 --version
uv --version
docker version
docker compose version
apt-get update
Then validate nested services:
docker run -d --name smoke-postgres \
-e POSTGRES_PASSWORD=postgres \
-p 5432:5432 \
postgres:16
docker ps
Persistence
For workspace <id>:
$HOST_DATA_DIR/workspaces/<id>/repo -> /workspace
$HOST_DATA_DIR/workspaces/<id>/home -> /home/agent
$HOST_DATA_DIR/workspaces/<id>/docker -> /var/lib/docker
Cloud credentials and CLI state survive recreation when stored under /home/agent, including:
/home/agent/.aws
/home/agent/.azure
/home/agent/.config/gcloud
/home/agent/.kube
/home/agent/.cache
/home/agent/.local
Git push
Push remains a dedicated audited MCP tool. To enable it:
ENABLE_GIT_PUSH=true
GITHUB_TOKEN=<short-lived-token>
Then recreate the MCP controller:
docker compose --env-file .env up -d --force-recreate mcp
Do not put the GitHub token inside a workstation. The controller injects it only into the host-side push process.
Security boundary
Workstation mode is intentionally powerful. The container is privileged because nested Docker requires it. The security boundary is the workstation container plus its dedicated mounted directories—not command-level restrictions inside the workstation.
It does not mount:
- the host Docker socket;
- arbitrary host directories;
- the MCP controller's secrets;
- the macOS filesystem.
Use this mode on a dedicated Docker Desktop context or, later, move the same image to a dedicated VM for stronger isolation.
Main tools
The existing MCP tools remain compatible. Version 0.2.0 adds workspace_recreate_runtime, which replaces a runtime while preserving its persistent state.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
Neon Database
MCP server for interacting with Neon Management API and databases
E2B
Using MCP to run code via e2b.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.