Token导航 LogoToken导航TokenDH.com
MCP Docker Sandbox Interpreter logo
开发工具stdio官方级别未说明来源级核验

MCP Docker Sandbox Interpreter

MCP Server

一个基于Docker的安全代码执行环境,用于Model Context Protocol (MCP),支持多语言代码在隔离容器中运行。

工具数

0

提示词数

0

GitHub Stars

4

资源数

0
代码执行PythonClaude开发工具Claude DesktopClaudeCursor

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

svngoku

提供方

svngoku

最后核验

2026/5/17 20:23

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python -m venv .venv

详细介绍

MCP Docker沙盒解释器

用于模型上下文协议(MCP)的基于Docker的安全代码执行环境。

概述

该项目为通过MCP(模型上下文协议)执行代码提供了一个安全的沙箱。它允许AI助手通过在隔离的Docker容器中执行所有代码,安全地运行代码,而不需要直接访问主机系统。

graph LR
    A[Claude/Cursor] -->|Sends Code| B[MCP Server]
    B -->|Executes Code| C[Docker Sandbox]
    C -->|Returns Results| A

特性

  • 安全执行:代码在具有严格安全限制的隔离Docker容器中运行
  • 多语言支持:目前支持Python,可轻松扩展到其他语言
  • 资源限制:CPU和内存限制,防止滥用
  • MCP集成:与模型上下文协议完全兼容
  • 自动设置:处理容器创建、依赖项安装和清理

需求

  • Docker(桌面或引擎)
  • Python 3.10+
  • MCP-SDK(pip install mcp)
  • Docker Python SDK(pip install docker)

安装

  1. 克隆此存储库:
   git clone https://github.com/yourusername/mcp-docker-interpreter.git
   cd mcp-docker-interpreter
  1. 创建并激活虚拟环境:
   python -m venv .venv
   source .venv/bin/activate  # On Windows: .venv\Scripts\activate
  1. 安装依赖项:
   pip install -r requirements.txt

用法

启动MCP服务器

通过运行以下命令启动服务器:

# For Colima users:
export DOCKER_HOST="unix:///Users/username/.colima/default/docker.sock"

# Run the server
uv run mcp dev main.py

连接到AI助手

您可以将此MCP服务器连接到支持模型上下文协议的AI助手:

光标

在Cursor中,将以下内容添加到MCP设置中:

{
  "mcpServers": {
    "docker-sandbox": {
      "command": "python",
      "args": ["/absolute/path/to/your/main.py"],
      "env": {
        "DOCKER_HOST": "unix:///path/to/your/docker.sock"
      }
    }
  }
}

用实际文件路径替换路径。

克劳德桌面版

与Cursor类似,将配置添加到Claude Desktop的MCP设置中。

MCP工具

此MCP服务器公开了三个主要工具:

  1. 初始化_沙盒:为代码执行创建一个新的Docker容器
   Arguments:
   - image: The Docker image to use (default: "alpine:latest")
  1. execute_code:在初始化的沙盒中运行代码
   Arguments:
   - code: The code string to execute
   - language: Programming language (default: "python")
  1. stop_sandbox:停止并移除容器
   No arguments needed

运作原理

  1. initialize_sandbox 系统被称为:

- 基于Alpine Linux创建Docker容器 - 安装Python和其他依赖项 - 设置安全限制

  1. execute_code 被称为:

- 代码在隔离容器内执行 - 捕获标准输出和错误 - 结果返回给调用应用程序

  1. stop_sandbox 被称为:

- 容器被停止并移除 - 所有资源均已释放

安全注意事项

此沙盒实现了多种安全措施:

  • 容器的CPU和内存使用受到限制
  • 容器以最低权限运行
  • 默认情况下禁用网络访问
  • 容器是一次性的,使用后会被清理干净

发展

项目结构

mcp-docker-interpreter/
├── main.py          # Main implementation of MCP server and Docker sandbox
├── requirements.txt # Project dependencies
└── README.md        # This file

添加新语言支持

要添加对新编程语言的支持,请修改 run_code 方法在 DockerSandbox 类来处理新语言。

故障排除

常见问题

  1. Docker连接错误:

- 确保Docker正在运行 - 检查是否为DOCKER安装正确设置了DOCKER_HOST环境变量

  1. 容器创建失败:

- 验证您是否有权创建Docker容器 - 确保指定的基础映像可访问

  1. 代码执行失败:

- 检查语言运行库是否正确安装在容器中 - 验证代码对指定语言有效

许可证

MIT许可证

致谢

目录标签

目录标签

代码执行PythonClaude开发工具本地部署安全沙盒Docker容器MCP协议

支持客户端

Claude DesktopClaudeCursor

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP