Token导航 LogoToken导航

MCP Server · 运维云端

Sandbox Forge MCP

SandboxForge MCP是一个支持多虚拟化后端的MCP服务器,用于虚拟机优先的隔离执行和Docker/Compose工作负载管理。

stdio官方级别未说明来源级核验工具 25
多平台支持PythonCursor工作流自动化

快速开始

作者 / 组织
Abin-Thankachan
提供方
Abin-Thankachan
运行时
Python

工具数量

25

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

1

仓库热度

收录来源

1 个

MCP World

选型结论

Sandbox Forge MCP 属于运维云端类 MCP Server,公开资料标注 25 个工具,通过stdio 本地进程接入,适配 Cursor,有可以直接复制的安装命令;接入前先确认权限范围。

分类

运维云端

传输方式

stdio

认证方式

无需认证

部署方式

公开资料未说明

安装与配置

安装命令

uv run sandboxforge-mcp-server

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Python,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 25 个工具,随便调一个只读工具确认能返回结果。

接入前确认

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

详细介绍

SandboxForge MCP

SandboxForge MCP是一个用于VM首次隔离执行的MCP服务器,具有工作区感知工具。

它支持多个虚拟化后端:

  • 利马在macOS和Linux上
  • 本机Windows上的Hyper-V

在每个VM内部,SandboxForge可以引导Docker/Compose工作负载,运行命令,管理可选的MySQL/Redis服务,并通过基于租约的生命周期控制收集工件。

目录

为什么选择SandboxForge MCP

  • VM优先隔离执行,不应直接在主机上运行
  • 感知工作空间的生命周期编排(创建、同步、运行、收集、销毁)
  • Docker/在一次性访客中编写运行时
  • 跨macOS、Linux/Windows的后端中立合约
  • 专为自动化流程和MCP客户端而设计,而不是手动VM管理

何时使用此选项(与替代选项相比)

当您需要用于自动化工作流的工具驱动隔离层时,请选择SandboxForge MCP。

选项最佳选择隔离边界权衡
SandboxForge MCPMCP驱动的一次性VM自动化,内置DockerVM客户机比普通Docker更多的设置
主机上的普通Docker快速的本地容器循环主机内核上的容器较弱的主机分离
开发容器以IDE为中心的本地开发主机内核上的容器不以租赁/任务编排为中心
GitHub代码空间云开发环境远程VM/容器需要云工作流和成本
基于Firecracker的沙盒高密度microVM基础设施microVM不同的操作模型/工具

主要工作流程

  1. 一次性集成测试沙箱:

- create_instance -> prepare_workspace -> run_command -> collect_artifacts -> destroy_instance

  1. 隔离执行不受信任的构建/测试步骤:

- 同步仓库,在客户机中运行构建/测试工具,仅复制输出

  1. 带有捆绑服务的Docker化应用程序准备:

- prepare_workspace 带基础设施选项-> docker_compose up ->使用注入的DB/Redis环境运行测试

隔离模型

SandboxForge是VM优先隔离,而不仅仅是Docker主机隔离。

  • 隔离边界:一次性VM客户机
  • 运行时边界内:Docker/Compose
  • 目标:减少主机污染,改善任务执行的隔离

操作系统支持列表

截至2026年3月25日的状态:

主机操作系统状态后端备注
macOS支持Lima默认 vm.vm_type = "vz"
Linux支持Lima默认 vm.vm_type = "qemu"
Windows(本机)支持Hyper-V需要Hyper-V+ HYPERV_BASE_VHDX +OpenSSH客户端
Windows(WSL2托管服务器运行时)v1不支持N/A在Windows上本机运行服务器

返回不支持的主机或缺少先决条件 BACKEND_UNAVAILABLE.

建筑

flowchart LR
  Client["MCP Client"] --> Server["SandboxForge MCP Server"]
  Server --> Backend["Backend (Lima/Hyper-V)"]
  Backend --> VM["Disposable VM Guest"]
  VM --> Runtime["Docker/Compose Workloads"]
  Runtime --> Artifacts["Logs / Artifacts / Results"]

高级运行时流程:

  1. 客户端通过stdio或Streamable HTTP调用工具
  2. LeaseService 验证配置和生命周期约束
  3. LeaseStore 在SQLite中保持租约/任务状态
  4. 后端执行VM生命周期操作
  5. 运行时助手在客户机中运行命令和容器工作负载
  6. 清扫器通过TTL过期租约

关键模块:

  • src/lima_mcp_server/server.py:MCP运输和工具登记
  • src/lima_mcp_server/service.py:编排和响应塑造
  • src/lima_mcp_server/backend/lima.py:Lima后端适配器
  • src/lima_mcp_server/backend/hyperv.py:Hyper-V后端适配器
  • src/lima_mcp_server/backend/factory.py:后端选择(auto|lima|hyperv)
  • src/lima_mcp_server/workspace_config.py:配置解析/验证
  • src/lima_mcp_server/runtime.py:Docker/Compose命令构建器
  • src/lima_mcp_server/db.py:SQLite持久性

需求

  • python 3.11+
  • uv
  • 主机虚拟化先决条件:

- macOS/Linux: limactl 在 PATH - Windows:Hyper-V cmdlet+ ssh/scp

最小默认VM形状:

  • cpus = 1
  • memory_gib = 2.0
  • disk_gib = 15.0

快速启动(本地主机运行时)

uv sync --extra dev
uv run sandboxforge-mcp-server

如果您的shell无法解析脚本入口点:

uv run python -m lima_mcp_server.server

使用Make:

make setup
make run

连接您的MCP客户端

选项A:本地stdio(建议开发)

在MCP客户端配置中使用以下内容:

{
  "mcpServers": {
    "sandboxforge": {
      "command": "uv",
      "args": ["run", "sandboxforge-mcp-server"],
      "cwd": "/absolute/path/to/SandboxMCP"
    }
  }
}

如果你的客户仍然报告 Failed to spawn sandboxforge-mcp-server,使用:

{
  "mcpServers": {
    "sandboxforge": {
      "command": "uv",
      "args": ["run", "python", "-m", "lima_mcp_server.server"],
      "cwd": "/absolute/path/to/SandboxMCP"
    }
  }
}

选项B:流式HTTP

运行启用HTTP的服务器(默认)并连接到:

  • 网址: http://127.0.0.1:8765/mcp

客户端配置示例:

{
  "mcpServers": {
    "sandboxforge-http": {
      "transport": "streamable-http",
      "url": "http://127.0.0.1:8765/mcp"
    }
  }
}

笔记:

  • http://127.0.0.1:8765/ 回报 404 刻意为之
  • http://127.0.0.1:8765/mcp 是MCP端点

IDE集成示例

集成参考:

光标(标准输入模式)

当Cursor应启动服务器进程时使用:

{
  "mcpServers": {
    "sandboxforge": {
      "command": "uv",
      "args": ["run", "sandboxforge-mcp-server"],
      "cwd": "/absolute/path/to/SandboxMCP"
    }
  }
}

如果入口点解析失败,则回退:

{
  "mcpServers": {
    "sandboxforge": {
      "command": "uv",
      "args": ["run", "python", "-m", "lima_mcp_server.server"],
      "cwd": "/absolute/path/to/SandboxMCP"
    }
  }
}

游标或多个IDE(推荐使用共享HTTP服务器)

当多个客户端/代理必须共享一台服务器并避免重复实例时使用:

  1. 在主机上启动服务器一次:
cd /absolute/path/to/SandboxMCP
uv run python -m lima_mcp_server.server
  1. 将每个IDE/客户端指向同一端点:
{
  "mcpServers": {
    "sandboxforge": {
      "transport": "streamable-http",
      "url": "http://127.0.0.1:8765/mcp"
    }
  }
}

其他与MCP兼容的IDE/客户端

使用相同的JSON格式(mcpServers)其中之一:

  • command + args (stdio),或
  • transport: "streamable-http" + url (共享服务器)

这使得Cursor和支持MCP的其他IDE扩展/代理之间的集成保持一致。

Hello World(第一端到端流)

连接客户端后,在本地工作区路径上运行此流:

  1. validate_workspace_config(workspace_root="/abs/path/to/workspace")
  2. create_instance(workspace_root="/abs/path/to/workspace", auto_bootstrap=true, wait_for_ready=true)
  3. prepare_workspace(instance_id="", wait_for_ready=true)
  4. run_command(instance_id="", command="echo hello-from-sandbox && uname -a")
  5. destroy_instance(instance_id="")

预期成功标志:

  • create_instance:返回 instance_id 以及后端详细信息
  • prepare_workspace: runtime_ready = true
  • run_command:退出代码 0 带命令输出

刀具表面

核心工具包括:

  • create_instance, list_instances, destroy_instance, extend_instance_ttl
  • validate_workspace_config, validate_image
  • prepare_workspace, run_command
  • copy_to_instance, copy_from_instance, sync_workspace_to_instance, sync_instance_to_workspace
  • docker_build, docker_run, docker_exec, docker_logs, docker_compose, docker_ps, docker_images, docker_cleanup
  • start_background_task, get_task_status, get_task_logs, stop_task
  • collect_artifacts

配置

工作区配置文件优先级(高->低):

  1. 请求覆盖
  2. /.sandboxforge.toml
  3. ~/.config/sandboxforge-mcp/config.toml
  4. 内置默认值

仍然支持旧配置文件:

  • 工作区: .orbitforge.toml, .lima-mcp.toml
  • 全球的: ~/.config/orbitforge-mcp/config.toml, ~/.config/lima-mcp/config.toml

默认VM配置:

  • template = "template:docker"
  • vm_type = "vz" 在macOS上
  • vm_type = "qemu" 在Linux上
  • vm_type = null 在其他主机上

有关架构/示例,请参见 docs/SETUP.md 和 src/lima_mcp_server/workspace_config.py.

环境变量

核心服务器:

  • MCP_HTTP_HOST (默认值 127.0.0.1)
  • MCP_HTTP_ALLOW_NON_LOOPBACK (默认值 0)
  • MCP_HTTP_PORT (默认值 8765)
  • MCP_ENABLE_HTTP (默认值 1)
  • LEASE_DB_PATH (默认值 state/leases.db)
  • MAX_INSTANCES (默认值 3)
  • DEFAULT_TTL_MINUTES (默认值 30)
  • MAX_TTL_MINUTES (默认值 120)
  • SANDBOX_SWEEPER_INTERVAL_SECONDS (默认值 60)

后端选择:

  • SANDBOX_BACKEND (auto, lima, hyperv;默认 auto)

Hyper-V后端:

  • HYPERV_SWITCH_NAME (默认值 Default Switch)
  • HYPERV_BASE_VHDX (Hyper-V需要)
  • HYPERV_STORAGE_DIR (默认值 state/hyperv)
  • HYPERV_SSH_USER (默认值 ubuntu)
  • HYPERV_SSH_KEY_PATH (可选)
  • HYPERV_SSH_PORT (默认值 22)
  • HYPERV_BOOT_TIMEOUT_SECONDS (默认值 180)

发展

运行测试:

uv run pytest -q

集成门:

  • RUN_LIMA_INTEGRATION=1
  • RUN_HYPERV_INTEGRATION=1

安全模型和非目标

信任模型:

  • 可信任:主机操作员、MCP服务器进程、后端工具
  • 不可信/不太可信:在来宾VM中执行的工作区代码和命令

威胁模型重点:

  • 减少任务执行对主机的直接暴露
  • 通过在一次性访客中运行工作负载来限制主机污染
  • 通过持久的租约/任务记录保持任务生命周期的可审计性

非目标:

  • 不保证客户机到主机内核逃逸
  • 不能替代强化的多租户沙盒基础设施
  • 默认情况下不是一个完整的网络隔离框架

故障排除和错误纠正

Failed to spawn: sandboxforge-mcp-server

  • 跑 uv sync --extra dev 在repo根目录中
  • 验证脚本: uv run sandboxforge-mcp-server --help
  • 回退入口点: uv run python -m lima_mcp_server.server
  • 确保客户 cwd 指向此回购根

BACKEND_UNAVAILABLE

  • 确认主机操作系统的后端先决条件
  • 检查所选后端(SANDBOX_BACKEND)
  • macOS/Linux:验证 limactl --version
  • Windows:验证 Get-Command New-VM, Get-Command New-VHD, ssh -V

INSUFFICIENT_HOST_RESOURCES

  • create_instance 现在运行CPU、可用内存和可用磁盘的主机容量预检
  • 如果飞行前失败,减少 vm.cpus, vm.memory_gib,或 vm.disk_gib 在 /.sandboxforge.toml
  • 在低规格主机上,从 auto_bootstrap=false 并呼叫 prepare_workspace(..., include_services=false) 减少启动开销

不支持Docker托管的MCP运行时

  • 直接在主机操作系统(macOS/Linux/Windows本机)上运行MCP服务器
  • 将Docker的使用保持在访客VM工作负载内(docker_* 工具),而不是作为服务器主机运行时

HTTP端点混淆

  • GET / 回报 404 (预计)
  • MCP端点为 /mcp
  • 406 Not Acceptable 在纯curl上意味着端点是活动的,但需要MCP可流式传输的HTTP标头

使用了弃用的环境变量名称

  • 替换 LIMA_SWEEPER_INTERVAL_SECONDS 和 SANDBOX_SWEEPER_INTERVAL_SECONDS

迁移说明(v1中断)

此版本使用后端中性API命名。

与v1之前的版本相比发生了重大变化:

  • 工具重命名: lima_validate_image -> validate_image
  • 响应/存储字段重命名: lima_name -> backend_instance_name
  • 错误代码重命名: LIMA_COMMAND_FAILED -> BACKEND_COMMAND_FAILED
  • 环境变量重命名: LIMA_SWEEPER_INTERVAL_SECONDS -> SANDBOX_SWEEPER_INTERVAL_SECONDS

示例工作区

对于可复制的真实工作空间设置:

  • examples/sample-workspace/
  • examples/sample-workspace/README.md
  • examples/sample-workspace/.sandboxforge.toml

相关文档

  • 设置: docs/SETUP.md
  • 项目结构: docs/PROJECT_STRUCTURE.md
  • 编码约束: docs/CODING_STANDARDS.md
  • 贡献者指南: CONTRIBUTING.md
  • 变更日志: CHANGELOG.md
  • 安全: SECURITY.md
  • 代理商定位: AGENTS.md

致谢

许可证

MIT。看 LICENSE.

工具与能力

工具数量

25

资源数量

0

提示词数量

0

能力标签

虚拟机隔离Python本地部署Docker管理Compose支持多平台支持自动化工作流

支持客户端

Cursor

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

看服务状态

查询容器、日志和监控指标,定位异常。

执行部署变更

在权限范围内触发发布、回滚和环境切换。

核对资源用量

汇总用量,找出闲置和超额的部分。

选择建议

值得选的地方

  • 工具数量 25 个,一次接入能覆盖的操作比单点工具更全。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • stdio 方式要求本地装好 Python,换机器要重新装一遍。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在运维云端场景里让模型直接调用外部能力的人。
  • 已经在用 Cursor 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Sandbox Forge MCP

MCP World · 本页

25stdio有1 个2026-05-17
Ui Tars Desktop 8a825770

MCP World

0stdio有1 个2026-05-17
Elie222 MCP

MCP World

0未说明未标注1 个2026-05-17
Arizeai Phoenix MCP

MCP World

0stdio有3 个2026-05-17
Unity MCP 87ee506e

MCP World

42HTTP有2 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Sandbox Forge MCP 怎么安装?

公开资料给出的安装命令是 uv run sandboxforge-mcp-server,运行环境为 Python。装完后按客户端要求写进 MCP 配置,重启客户端生效。

Sandbox Forge MCP 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Python;保存后完全退出客户端再打开,配置才会生效。

Sandbox Forge MCP 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Sandbox Forge MCP 需要 API Key 吗?

公开资料标注为无需认证,装好就能连;如果实际调用时报鉴权错误,按官方文档补上凭据。

Sandbox Forge MCP 支持哪些客户端?

公开资料标注支持 Cursor;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP