article
README
🚀 砂箱 MCP 服务器
砂箱 MCP 服务器提供了一个隔离的 Docker 环境,用于代码执行。它允许用户使用任何 Docker 镜像创建容器,在多种编程语言中编写和执行代码,安装包并设置开发环境,还能在隔离的容器中运行命令。
🚀 快速开始
✨ 主要特性
- 支持使用任何 Docker 镜像创建容器。
- 可在多种编程语言中编写和执行代码。
- 能够安装包并设置开发环境。
- 可在隔离的容器中运行命令。
📦 安装指南
先决条件
- Python 3.9 或更高版本
- 已安装并正在运行的 Docker
- uv 包管理器(推荐)
- Docker MCP 服务器(推荐)
安装步骤
- 克隆此仓库:
git clone <your-repo-url>
cd sandbox_server
- 创建并激活带有 uv 的虚拟环境:
uv venv
source .venv/bin/activate # 在 Unix/MacOS 上
# 或在 Windows 上:
# .venv\Scripts\activate
- 安装依赖项:
uv pip install .
与 Claude Desktop 的集成
-
打开 Claude Desktop 的配置文件:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:%APPDATA%\Claude\claude_desktop_config.json%
- macOS:
-
添加沙盒服务器的配置:
{
"mcpServers": {
"sandbox": {
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/sandbox_server",
"run",
"sandbox_server.py"
],
"env": {
"PYTHONPATH": "/absolute/path/to/sandbox_server"
}
}
}
}
请将 /absolute/path/to/sandbox_server 替换为实际项目目录的路径。
- 重启 Claude Desktop
💻 使用示例
基础用法
一旦连接到 Claude Desktop,您可以:
- 创建一个 Python 容器:
你能创建一个 Python 容器并编写一个简单的“你好,世界”程序吗?
- 在不同语言中运行代码:
你能创建一个计算斐波那契数列的 C 程序并运行它吗?
- 安装包并使用它们:
你能创建一个使用 numpy 生成和绘制一些随机数据的 Python 脚本吗?
高级用法
保存和重现实验环境
该服务器提供了多种方法来保存和重现您的开发环境:
创建持久化容器
在创建容器时,您可以将其设置为持久化:
你能创建一个带有 numpy 和 pandas 安装的持久化 Python 容器吗?
这将创建一个容器,该容器:
- 在 Claude Desktop 关闭后仍然运行
- 可以直接通过 Docker 访问
- 保留所有已安装的包和文件
服务器会提供以下指示:
- 直接使用
docker exec访问容器 - 容器的停止和启动
- 不再需要时删除它
保存容器状态
你能保存容器的状态到一个持久化容器中吗?
导出 Dockerfile
你能导出一个 docker 文件以创建持久化环境吗?
退出容器
你能关闭容器以便清理环境吗?
⚠️ 重要提示
- 确保在运行外部命令时使用受信任的来源。
- 避免在不受信任的环境中执行用户提供的代码。
微信扫一扫