Sandbox Mcp について
Sandbox MCP は、LLM クライアントが分離された Docker コンテナ内でコードを実行できるようにする MCP サーバーです。生成されたコードをホストマシン上で直接実行せずに済みます。ローカルで動作し、利用者が独自のサンドボックス環境を作成・設定できます。Codapi に着想を得ています。
主な機能
- 01分離された Docker コンテナでのコード実行
- 02shell、Python、Go、Rust、Java 向けの組み込みサンドボックス
- 03接続確認用の network-tools サンドボックス
- 04Dockerfile と JSON で定義するカスタムサンドボックス
- 05バイナリのダウンロードまたは Go によるインストール
活用シーン
- 01LLM が生成したコードを実行して検証する
- 02教育や技術面接でコードの断片をその場で実行する
- 03分離されたネットワークツールで接続上の問題を調べる
MCP 対応
本プロジェクトは stdio で動作する MCP サーバーであり、Claude Desktop や Cursor などの MCP クライアントから起動してコード実行環境を利用できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細

Sandbox MCP は、LLM(MCP ホスト/クライアント)が安全に隔離された Docker コンテナ内でコードを実行できるようにする Model Context Protocol(MCP)サーバーです。
LLM はコードの生成が非常に得意ですが、ほとんどの場合、生成したコードを実行できません。そのため、テストされていないコードを直接お使いのマシンで実行することになり、予期しない深刻な結果を招く可能性があります。
LLM にコードを安全にテストするツールを提供すれば、こうした問題を防ぎ、より少ない反復で、より正確なコードを生成できるようになります。
Sandbox MCP は、ローカルで実行されるシンプルな AI ネイティブの MCP サーバーを通じて、誰でも作成・設定できる使いやすい実行環境を LLM に提供します。
Codapi に着想を得ています。一部のサンドボックスは Codapi のサンドボックスと同じです。
使用例
Sandbox MCP は、以下を含むさまざまなタスクに使用できます。
- 安全なコード実行:LLM が生成したコードを安全に隔離された環境で実行し、信頼できないコードや有害な可能性のあるコードからシステムを保護します。
- コードのテスト:さまざまな環境で、複数の言語や設定のコードを自動的にテスト・検証してから、大規模なプロジェクトや本番システムに組み込みます。
- ユーザーコードの検証:ユーザーから送信されたコードやスクリプトを安全に実行・確認し、想定どおりに動作し、悪意のある処理を行わないことを確かめます。
- ネットワークのトラブルシューティング:隔離されたネットワークツールを使用して、システムを外部にさらすことなく、接続の問題を診断し、エンドポイントをテストし、ネットワークのパフォーマンスを分析します。
- 教育や面接でのコーディング:学習、指導、技術面接でコードスニペットをすぐにコンパイル・実行し、安全な一時環境で即座にフィードバックを得られます。
- コードレビューとフィードバックの自動化:LLM がコードを自動的に実行、テスト、レビューし、コードのマージやデプロイの前に実行可能なフィードバックや提案を提供します。
デモ
このデモでは、Sandbox MCP が Claude Desktop と連携する様子を紹介します。

GIF が見づらい場合は、動画をご覧ください。
インストール
バイナリをダウンロード
お使いのオペレーティングシステム(例:Darwin)とプロセッサアーキテクチャ(arm64)に対応するバイナリを、リリースページからダウンロードできます(sandbox-mcp_Darwin_arm64.tar.gz)。
Go でインストール
前提条件:
- Go 1.24 以降
go install github.com/pottekkat/sandbox-mcp/cmd/sandbox-mcp@latest
sandbox-mcp バイナリのパスを取得します。
which sandbox-mcp
ソースからビルド
開発セクションをご覧ください。
使用方法
初期化
LLM で sandbox-mcp を使用する前に、設定を初期化する必要があります。
# Create the configuration directory in
# $XDG_CONFIG_HOME/sandbox-mcp and pull
# the default sandboxes from GitHub
sandbox-mcp --pull
# Build the Docker images for the sandboxes
sandbox-mcp --build
メモ
Docker がインストールされ、実行中であることを確認してください。
MCP ホスト/クライアントで使用
Claude Desktop の場合は claude_desktop_config.json に、Cursor IDE の場合は mcp.json に次の内容を追加します。
{
"mcpServers": {
"sandbox-mcp": {
"command": "path/to/sandbox-mcp",
"args": [
"--stdio"
]
}
}
}
メモ
path/to/sandbox-mcpを、sandbox-mcpバイナリの実際のパスに置き換えてください。
利用可能なサンドボックス
| サンドボックス | 説明 |
|---|---|
| shell | ネットワークアクセスを必要とせず、軽量なコマンドを実行できる、安全で分離された Linux 環境です。 |
| python | 安全で分離された環境で Python コードを安全に実行します。 |
| rust | 分離された環境で Rust コードをコンパイルして実行します。 |
| network-tools | 分離された Linux サンドボックスで、さまざまなネットワークユーティリティを使用できます。ネットワークの診断やトラブルシューティングに最適です。利用可能なツールの一覧は https://github.com/jonlabelle/docker-network-tools を参照してください。 |
| go | ネットワークアクセスが可能な分離環境で、Go コードを安全に実行します。 |
| javascript | Node.js を使用して、分離された環境で JavaScript コードを実行します。 |
| apisix | YAML ファイルで設定でき、main.sh ファイルで提供される curl コマンドを使って操作できる、軽量な Apache APISIX インスタンスを実行します。例:curl -sI http://127.0.0.1:9080/ip。 |
| java | 分離されたサンドボックスで Java コードをコンパイルして実行します。Java のプレビュー機能に対応しています。 |
重要
独自のサンドボックス
$XDG_CONFIG_HOME/sandbox-mcp/sandboxesに独自のサンドボックスを作成して追加できます。サンドボックスは基本的に Dockerfile と JSON 設定ファイルで構成されます。詳しくはサンプルとガイドをご覧ください。
開発
リポジトリをフォークしてクローンします。
git clone https://github.com/username/sandbox-mcp.git
ディレクトリに移動します。
cd sandbox-mcp
依存関係をインストールします。
make deps
プロジェクトをビルドします。
make build
ローカルビルドを参照するように、MCP サーバーの設定を更新します。
{
"mcpServers": {
"sandbox-mcp": {
"command": "/path/to/sandbox-mcp/dist/sandbox-mcp",
"args": [
"--stdio"
]
}
}
}
ライセンス
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。