项目简介

Gru-sandbox (gbox) 是一个开源项目,旨在为 Model Context Protocol (MCP) 客户端(如 Claude Desktop 和 Cursor)提供一个自托管的沙箱环境。它允许 AI 客户端在本地安全地执行命令,从而扩展 AI 应用的功能。

主要功能点

  • 资源管理 (Boxes): gbox 将沙箱容器(Boxes)作为资源进行管理,允许 MCP 客户端列出和查看容器信息。
  • 工具执行 (Tools): 提供多种工具,允许 MCP 客户端在沙箱中运行代码,包括 Python、TypeScript 和 Bash 脚本,并能读取服务器上的文件。
  • MCP 协议兼容: 完全实现了 Model Context Protocol (MCP) 协议,能够与任何兼容 MCP 协议的客户端进行通信。
  • 本地与远程沙箱: 支持在本地使用 Docker Desktop 或在远程 Kubernetes 集群中运行沙箱容器。
  • 文件共享: 通过卷挂载和共享目录,方便地在宿主机和沙箱容器之间共享文件。

安装步骤

  1. 系统要求: macOS 10.15 或更高版本,安装 Docker Desktop for MacHomebrew
  2. 使用 Homebrew 安装: 运行命令 'brew tap babelcloud/gru && brew install gbox'。
  3. 初始化环境: 运行命令 'gbox setup'。
  4. 导出 MCP 配置: 运行命令 'gbox mcp export --merge-to claude' (或 'gbox mcp export --merge-to cursor'),将 MCP 服务器配置导出并合并到 Claude Desktop 或 Cursor 的配置文件中。
  5. 重启 Claude Desktop/Cursor: 重启 MCP 客户端使配置生效。

服务器配置

MCP 客户端需要配置 MCP 服务器的启动命令及其参数才能连接到 gbox MCP 服务器。以下是 Claude Desktop 或 Cursor 的 'claude_desktop_config.json' 或 'mcp.json' 配置文件中 'mcpServers' 字段的配置示例 (JSON 格式):

{
  "mcpServers": {
    "gbox": {
      "command": "node",
      "args": [
        "path/to/gbox/packages/mcp-server/dist/index.js"
      ],
      "comment": "指向 gbox MCP 服务器脚本的路径。请根据您的实际安装路径进行调整。"
    }
  }
}

基本使用方法

  • 安装和配置完成后,Claude Desktop 或 Cursor 等 MCP 客户端即可使用 gbox 提供的工具。
  • 使用 'list-boxes' 工具列出可用的沙箱容器 (Boxes)。
  • 使用 'run-python', 'run-typescript', 或 'run-bash' 工具在沙箱中执行代码,可以选择指定 'boxId' 来复用已有的容器。
  • 使用 'read-file' 工具读取沙箱容器中的文件,需要提供 'boxId' 和文件 'path'。

信息

分类

AI与计算