Back to MCP directory
publicPublicdnsLocal runtime

gbox

gbox是一个开源的自托管沙箱项目,为AI代理提供安全执行环境,支持终端、浏览器、文件操作等多种工具,并兼容MCP协议。

article

README

🚀 gbox 使用文档

gbox 是一个功能强大的工具,提供了一系列服务和功能。本使用文档将详细介绍 gbox 的安装、使用、贡献以及许可证等相关信息,帮助你快速上手和参与项目开发。

🚀 快速开始

在使用 gbox 之前,你需要完成安装和配置。以下是详细的安装和启动步骤。

📦 安装指南

先决条件

  • Go 1.21 或更高版本
  • Docker Desktop
  • Make 工具
  • pnpm (通过 corepack)
  • Node.js 16.13 或更高版本

构建

# 构建所有组件
make build

# 创建发行版包
make dist

运行服务

# API Server
make -C packages/api-server dev

# MCP Server
cd packages/mcp-server && pnpm dev

# MCP Inspector
cd packages/mcp-server && pnpm inspect

💻 使用示例

开发和调试本地环境

如何在开发环境中运行 gbox 而不是系统安装的版本

  1. 通过 gbox cleanup 停止已安装的 gbox,以便 API 服务器可以在开发环境中运行。
  2. 在项目根目录中执行 make api-dev
  3. 执行 ./gbox box list,这是从您的开发环境运行的命令。

如何将 MCP 客户端(如 Claude Desktop)连接到开发环境中的 MCP 服务器

  1. 在项目根目录中执行 make mcp-dev
  2. 执行 ./gbox mcp export --merge-to claude

如何打开 MCP 检查窗口

  1. 在项目根目录中执行 make mcp-inspect
  2. 点击终端返回的链接。

如何在开发环境中构建和使用镜像

  1. 执行 make build-image-python 在项目根目录中构建 Python 镜像,或 make build-images 以构建所有镜像。
  2. 根据需要更改镜像名称(例如,执行 make build-image-typescript 以获取 TypeScript 镜像)。
  3. 您可能需要删除当前沙箱以使新镜像生效 ./gbox box delete --all

为什么 MCP 客户端仍然显示旧的 MCP 内容?

  1. 修改了 MCP 配置(例如工具定义),您需要运行 make build 更新 dist/index.js 文件。
  2. 您可能还需要执行 ./gbox mcp export --merge-to claude

✨ 主要特性

本项目提供了一个可在本地环境进行开发、调试的工具,支持多种服务的运行和镜像的构建,方便开发者进行功能测试和优化。同时,通过详细的开发和调试指南,帮助开发者更好地参与项目开发。

🤝 贡献指南

我们欢迎您的贡献!请随时提交 Pull Request。对于重大更改,请先打开一个问题进行讨论。

  1. 叉取仓库
  2. 创建功能分支 (git checkout -b username/feature-name)
  3. 提交更改 (git commit -m 'Add some feature')
  4. 推送到分支 (git push origin username/feature-name)
  5. 打开 Pull Request

📄 许可证

本项目 licensed under the Apache License 2.0,具体请查看 LICENSE 文件以获取详细信息。

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client