首页/代码执行/docker-code-executor-mcp

docker-code-executor-mcp

查看源码
2025-5-12
Words 731Read Time 2 min
Score:85

基于MCP的Docker代码执行服务,提供多语言代码的隔离执行环境,确保代码运行的安全性。

Python

Docker 代码执行器

一个基于 MCP(Model Context Protocol)的安全服务,用于在隔离的 Docker 容器中执行代码。该服务为测试和运行各种编程语言的代码片段或项目提供了一个安全的环境。

功能特性

  • 隔离执行:在 Docker 容器中安全地运行代码
  • 多语言支持:支持执行 Python、Bash 及其他语言的代码
  • 文件操作:在容器内读取、写入和管理文件
  • 目录管理:创建和浏览项目结构
  • 容器生命周期:完整管理执行环境
  • 灵活的通信方式:支持 stdio 和 HTTP 通信

环境要求

  • Python 3.8+
  • Docker
  • MCP 库 v1.6.0+
  • docker-py

安装

使用指南

启动服务器

标准输入/输出(stdio)模式

SSE 模式

使用客户端

项目包含一个轻量级客户端,用于与服务器交互:

API 参考

Docker 代码执行器提供了以下核心工具:
工具
描述
create_executor
创建一个新的 Docker 代码执行器实例
execute_code
在容器中运行指定语言的代码
delete_executor
移除执行器并清理资源
list_directory
列出容器内目录的内容
read_file
读取文件内容
write_file
向文件写入内容
create_directory
创建一个新目录
project_structure
生成项目结构的树状视图

示例用法

客户端代码示例

安全考虑

Docker 代码执行器实现了多项安全措施:
  • 具有资源限制的隔离 Docker 容器
  • 网络隔离以防止未经授权的访问
  • 输入验证以防止代码注入攻击
  • 容器权限限制
  • 资源配额(内存、CPU)以防止 DoS 攻击
对于生产环境部署,建议添加以下措施:
  • 身份验证和授权
  • 速率限制
  • 网络防火墙规则
  • 额外的 Docker 安全配置文件

贡献指南

欢迎贡献!请遵循以下步骤:
  1. Fork 仓库
  1. 创建功能分支
  1. 进行修改
  1. 提交 Pull Request
请确保您的代码遵循项目的风格指南,并包含适当的测试。

许可证

本项目采用 MIT 许可证。详情请参阅 LICENSE 文件。
上一篇
typst-mcp
下一篇
cve-search_mcp