Docker MCP Server

Docker MCP Server

site icon
2025.03.12 0
Python代码执行环境多语言支持容器管理开发效率
Docker MCP Server 是一个强大的模型上下文协议(MCP)服务器,能够在隔离的Docker容器中执行代码,并将结果返回给如Claude等语言模型。它支持多语言代码执行、复杂的脚本运行、依赖管理以及容器管理等功能,适用于需要安全、隔离环境执行代码的场景。
View on GitHub

Overview

基本能力

产品定位

Docker MCP Server 是一个为语言模型提供安全、隔离代码执行环境的服务,支持多语言和复杂的脚本运行。

核心功能

  • 隔离代码执行:在Docker容器中运行代码,与主系统隔离。
  • 多语言支持:支持任何有Docker镜像的语言。
  • 复杂脚本支持:支持运行简单命令和完整的多行脚本。
  • 包管理:使用pip、npm、apt-get或apk安装依赖。
  • 容器管理:轻松创建、列出和清理Docker容器。
  • 健壮的错误处理:优雅的超时管理和回退机制。
  • 彩色输出:清晰、颜色编码的控制台反馈。

适用场景

  • 语言模型需要执行代码的场景。
  • 需要隔离环境运行多语言代码的项目。
  • 开发和测试多语言脚本的环境。

工具列表

  1. List Containers:列出所有Docker容器及其详情。
  2. Create Container:创建并启动带有可选依赖的Docker容器。
  3. Add Dependencies:在现有容器中安装额外的包。
  4. Execute Code:在运行的容器中执行命令。
  5. Execute Python Script:在运行的容器中执行多行Python脚本。
  6. Cleanup Container:停止并移除Docker容器。

常见问题解答

  • 端口已被占用:确保没有其他MCP Inspector实例在运行。
  • Docker连接问题:验证Docker是否运行。
  • 容器超时:服务器包含对不响应容器的回退机制。
  • 包安装失败:检查包名是否正确。
  • 未找到容器:Docker可能尚未创建任何容器。

使用教程

使用依赖

  • Python 3.9+
  • Docker已安装并运行
  • fastmcp库

安装教程

  1. 克隆仓库: bash git clone https://github.com/yourusername/docker_mcp_server.git cd docker_mcp_server
  2. 创建虚拟环境: bash python -m venv venv source venv/bin/activate # Windows: venv\Scripts\activate
  3. 安装依赖: bash pip install -r requirements.txt

调试方式

运行MCP Inspector:

python run_server.py

访问http://localhost:5173。

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。