サンドボックス MCP サーバー
コード実行のための分離されたDocker環境を提供するMCPサーバー。このサーバーでは、以下のことが可能です。
任意のDockerイメージでコンテナを作成する
複数のプログラミング言語でコードを記述して実行する
パッケージをインストールして開発環境をセットアップする
分離されたコンテナでコマンドを実行する
前提条件
Python 3.9以上
Dockerがインストールされ実行中
uv パッケージ マネージャー (推奨)
Docker MCP サーバー(推奨)
Related MCP server: Python MCP Sandbox
インストール
このリポジトリをクローンします:
uv を使用して仮想環境を作成し、アクティブ化します。
依存関係をインストールします:
Claude Desktopとの統合
Claude Desktop の設定ファイルを開きます。
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
サンドボックス サーバーの構成を追加します。
/absolute/path/to/sandbox_serverプロジェクト ディレクトリへの実際のパスに置き換えます。
Claudeデスクトップを再起動します
使用例
基本的な使い方
Claude Desktop に接続すると、次のことが可能になります。
Python コンテナを作成します。
さまざまな言語でコードを実行します。
パッケージをインストールして使用します。
環境の保存と再生
サーバーは、開発環境を保存および再現するためのいくつかの方法を提供します。
永続コンテナの作成
コンテナを作成するときに、それを永続化することができます。
これにより、次のコンテナが作成されます。
Claude Desktop が終了しても実行を継続します
Docker経由で直接アクセス可能
インストールされたすべてのパッケージとファイルを保存します
サーバーは次の指示を提供します:
コンテナに直接アクセスする(
docker exec)コンテナの停止と起動
不要になったら削除する
コンテナの状態を保存しています
環境を設定したら、それを Docker イメージとして保存できます。
これにより、次のようになります。
次のすべてを含む新しい Docker イメージを作成します。
インストールされたパッケージ
作成されたファイル
構成の変更
環境を再利用するための手順を提供する
その後、このイメージを共有したり、新しいコンテナの開始点として使用したりできます。
Dockerfilesの生成
環境を完全に再現可能にするには、Dockerfile を生成します。
生成された Dockerfile には次のものが含まれます。
ベースイメージの仕様
作成されたファイル
追加のセットアップ手順のテンプレート
この Dockerfile を使用すると次のことができます。
環境設定を他の人と共有する
開発環境のバージョン管理
ビルドプロセスを変更およびカスタマイズする
さまざまなシステムに展開
推奨ワークフロー
再現可能な開発環境の場合:
永続コンテナを作成します。
必要なパッケージをインストールし、環境を設定します。
セットアップをテストします。
状態を保存します:
Dockerfile をエクスポートします。
これにより、環境を再作成するための複数のオプションが提供されます。
保存したDockerイメージを直接使用する
Dockerfile から修正を加えてビルドする
必要に応じて元のコンテナにアクセスする
セキュリティノート
すべてのコードは分離されたDockerコンテナ内で実行される
使用後は容器が自動的に除去されます
ファイルシステムはコンテナ間で分離されている
ホストシステムへのアクセスが制限されています
プロジェクト構造
利用可能なツール
サーバーは 3 つの主なツールを提供します。
create_container_environment: 指定されたイメージで新しいDockerコンテナを作成するcreate_file_in_container: コンテナ内にファイルを作成するexecute_command_in_container: コンテナ内でコマンドを実行するsave_container_state: コンテナの状態を永続コンテナに保存しますexport_dockerfile: 永続的な環境を作成するために docker ファイルをエクスポートしますexit_container: 終了時にコンテナを閉じて環境をクリーンアップします