Oxcart 下载
菜单

面向 AI 编程智能体的 Docker:Claude Code、Codex 和 Cursor 的本地 MCP 服务器

让编程智能体在 Mac 上操作 Docker 容器,最佳方式是使用能直接回答问题的 MCP 服务器。Oxcart 内置这样的服务器:13 个工具、默认只读、仅在本地运行;崩溃诊断只需 159 个 token,而智能体通过 docker CLI 需要读取 2,014 个。

更新于

编程智能体需要从 Docker 了解什么

处理真实项目时,智能体会反复问几个问题:哪些服务正在运行、端口 3000 上是什么应用、这个容器为什么退出、日志说了什么、能否在一次性环境中运行测试。只有 shell 时,它会运行 docker ps、docker inspect 和 docker logs,再逐行读取返回内容。这能解决问题,却又慢又贵:每一轮都要把原始 JSON 和数百行日志放入模型上下文。

MCP 服务器把这些问题转化为直接返回答案的工具。Oxcart 的工具围绕问题设计,而非照搬 Docker API 端点,因此一次调用即可替代一连串命令。

13 个工具

按智能体意图分类的 Oxcart MCP 工具
意图工具可显示这些工具的最低权限级别
查看status, projects, ports, images, logsRead only(只读)
解释diagnose:退出码、OOM 终止、健康检查失败、端口问题,以及关键日志行Read only(只读)
执行操作container(启动、停止、重启)、exec、compose(启动、停止)、无网络的 sandboxManage(管理)
修改与清理build、remove、cleanup(先预览)、带网络的 sandboxFull(完整权限)

status 显示每个 Compose 项目的文件夹、git 分支及 localhost URL,让你和智能体对“端口 3000 上的应用”有相同理解。订阅资源的客户端可在崩溃、OOM 终止或健康状态变化发生时立即收到通知,无需轮询。

回答更精简,会话成本更低

智能体回答各问题时,通过 Oxcart 读取的内容与原本需读取的 docker CLI 输出对比;在同一时刻对同一批容器测量:

每个回答的 token 数(字符数 ÷ 4)
问题Oxcart MCP对应的 docker CLI 命令docker CLI缩减倍数
这个容器为什么停止?159inspect + logs --tail 3002,01413×
最近 500 行日志有错误吗?39logs --tail 50070318×
哪些服务正在运行?106ps -a + stats --no-stream + compose ls -a3323.1×

五个测试容器(一个崩溃、一个不健康、一个被 OOM 终止、一个 Compose 项目、一个已发布端口)。无论日志多长,diagnose 和 logs 的响应大小均保持不变。工具列表本身每个会话只需加载一次:只读级别(6 个工具)为 510 个 token,全部 13 个工具为 1,463 个。

完整会话也呈现同样趋势。Claude Code 使用 Claude Opus 5.5 回答两个日常问题,分别仅使用 docker CLI 和使用 Oxcart MCP 服务器。两组都正确回答了两个问题。

每个任务、每组各一次 Claude Code 会话:仅供参考,并非正式研究
任务时间费用Token 数轮次
“worker 有报错吗?把错误给我。”4.2 s 对比 31.0 s$0.022 对比 $0.15710,686 对比 52,2662 对比 8
“我的 api 容器一直退出,为什么?”8.5 s 对比 14.9 s$0.036 对比 $0.07011,283 对比 19,5102 对比 4

每个任务分别在使用和不使用 Oxcart 的条件下各运行一次会话,采用人工构造的测试容器,Oxcart 0.1.0:仅供参考。费用受提示缓存影响,运行顺序未交替安排。

在任意编程智能体中设置 Oxcart MCP 服务器

  1. 安装 Oxcart。 下载 Oxcart(Apple 芯片,macOS 26 或更高版本)并打开。设置可离线完成,只需几秒。
  2. 复制设置语句。 打开 Oxcart 侧边栏中的 MCP Integrations,复制这句话:“帮我设置 Oxcart 的 MCP 服务器:运行 /Applications/Oxcart.app/Contents/Helpers/oxcart agent setup 并按其说明操作。”
  3. 粘贴到智能体中。 粘贴到 Claude Code、Codex、Cursor 或任何可运行命令的智能体中。智能体会执行命令,读取适用于自身的步骤,并注册名为 oxcart 的服务器。
  4. 询问容器情况。 问“哪些服务正在运行?”或“api 为什么停止?”。智能体会以只读权限出现在 MCP Integrations 页面上,所有调用都显示在活动日志中。
  5. 按需提高权限。 将智能体设为 Manage,可启动、停止、执行命令和运行 Compose;设为 Full,可构建、移除和清理。Block 会拒绝所有调用。

如果智能体无法运行命令(如 Claude Desktop、LM Studio 等应用),Oxcart 会显示一段 JSON,供你添加到该应用的 MCP 设置中。Claude Code 可直接使用以下命令:

claude mcp add -s user oxcart -- /Applications/Oxcart.app/Contents/Helpers/oxcart mcp --client claude-code

对于 Codex,codex mcp add oxcart -- /Applications/Oxcart.app/Contents/Helpers/oxcart mcp --client codex 会为 Codex CLI 和 IDE 扩展注册服务器。

为每个智能体设置权限级别

各级别允许的操作
级别智能体可以
Read only(默认,只读)查看容器、日志、端口、项目和镜像;诊断故障
Manage(管理)还可启动、停止和重启,运行命令,执行 Compose up/down,运行无网络沙盒
Full(完整权限)还可构建、移除和清理,并允许沙盒访问网络
Block(阻止)不可执行任何操作:不列出工具,拒绝所有调用,并向智能体说明原因

高于智能体权限级别的工具完全不会列出,也有助于缩小上下文。每次调用都记录在 Mac 上,并显示在 MCP Integrations 页面;这些记录不会离开 Mac。这些级别控制 Oxcart 工具为智能体执行的操作,并不构成沙盒:能运行 shell 命令的智能体仍可自行运行 docker,因此应配合智能体自身的命令权限使用。

提供配置步骤的智能体

Claude Code、Claude Desktop、Codex、Cursor、带 Copilot 的 VS Code、Devin Desktop、Zed、Gemini CLI、GitHub Copilot CLI、OpenCode、Cline、Junie、JetBrains AI Assistant、Goose、Kiro、Amp、Warp 和 LM Studio,以及适用于其他 MCP 客户端的通用步骤。步骤来自已安装的 Oxcart(oxcart agent setup),使用 Mac 的真实路径,因此可离线使用,并与当前版本匹配。

MCP 之外的智能体容器工作流

  • Dev Containers:在 Dev Container 中运行智能体,让其 shell、工具和网络留在项目容器内。Oxcart 可运行 Dev Containers CLI;参见 Mac 上的 Dev Containers 和 Testcontainers。
  • 快速迭代:智能体会不断运行和拆除容器。Oxcart 实测 docker run --rm 为 42 ms,停止并移除 20 个容器为 77 ms,是我们测试的三款运行时中最快的(比较页面)。
  • Compose 服务栈:智能体的 compose 工具可在 Manage 级别启动和停止项目;参见 Apple 芯片上的 Docker Compose。

常见问题

Mac 上有面向 Docker 容器的 MCP 服务器吗?

有。Oxcart 内置 oxcart mcp,这是本地 stdio MCP 服务器,提供 13 个工具,用于状态、诊断、日志、端口、镜像、exec、Compose、构建、沙盒和清理。它不监听任何网络端口,也不需要令牌。

如何让 Claude Code 连接 Docker 容器?

将 Oxcart 的设置语句粘贴到 Claude Code,或运行 claude mcp add -s user oxcart -- /Applications/Oxcart.app/Contents/Helpers/oxcart mcp --client claude-code。随后 Claude Code 会列出 oxcart 服务器,并可调用其工具。

支持 Codex、Cursor 和带 Copilot 的 VS Code 吗?

Oxcart 为 18 款具名客户端提供配置步骤,包括 Codex、Cursor、带 Copilot 的 VS Code、Claude Desktop、Zed、Gemini CLI、GitHub Copilot CLI、Cline、Goose、Kiro、Amp、Warp 和 LM Studio,也为其他 MCP 客户端提供通用步骤。其中 Claude Code 已完成端到端运行验证。

智能体能删除我的容器或卷吗?

默认不能。每个智能体最初都是只读。你可分别将智能体提升至 Manage 或 Full,或设为 Block。在 Full 级别,cleanup 会先返回预览和令牌,只删除预览中列出的内容。这些级别控制 Oxcart 工具,并不构成沙盒;拥有 shell 权限的智能体仍可直接运行 docker CLI。

为什么不直接让智能体运行 docker 命令?

可以,但智能体需要读取大量原始输出。回答“这个容器为什么停止?”时,Oxcart 的 diagnose 工具需要 159 个 token,而 docker inspect 加 docker logs --tail 300 需要 2,014 个,缩减 13×。每个任务各运行一次 Claude Code 会话的参考测试中,查找日志错误用时从 31.0 s 降至 4.2 s。

MCP 服务器会把我的数据发送到其他地方吗?

不会。它只与本地引擎套接字通信,自身不建立网络连接。每次调用都写入 Mac 上的活动日志。工具启动或构建需要镜像的内容时,仍会像 docker run 一样从镜像仓库拉取镜像。

智能体能在一次性容器中运行代码吗?

可以,使用 sandbox 工具:它创建一次性容器,内存限制为 2 GiB,进程数限制为 1,024。默认无网络,只有智能体处于 Full 级别且请求网络访问时才会启用。

来源与方法

  • 回答大小:2026-10-10 使用五个测试容器测量;token 数按字符数 ÷ 4 估算。
  • 会话:Claude Code 2.1.296,使用 claude-opus-5-5,Oxcart 0.1.0,每个任务、每组各运行一次。
  • 速度数据:Oxcart 0.1.2,2026-10-10,Apple M5 Max,8 个 CPU 和 12 GiB;对比运行时于同日较早时间,使用同一台 Mac、同一套测试工具和 docker 29.4 客户端测量。

在你自己的项目中试用 Oxcart

免费试用 60 天。之后每位用户、每个主版本 $20,无需订阅。

Apple silicon · macOS 26 或更新版本

继续阅读

版本更新说明

Oxcart 0.1.4

最新版本

许可证功能与细节改进。

  • 通过安全邮件链接激活许可证。
  • 在 Settings 中管理许可证和 Mac。
  • 离线验证许可证。
  • 性能提升、界面优化与问题修复。

需要 macOS 26.0 或更高版本

Oxcart 0.1.3

空闲时回收内存。

  • 没有容器运行时回收 VM 内存。
  • 保留容器、镜像、卷和网络。

需要 macOS 26.0 或更高版本

Oxcart 0.1.2

命令行工具集成。

  • 在 Oxcart 自带的 Docker 工具与已安装的 Docker 工具之间切换。
  • 界面优化。

需要 macOS 26.0 或更高版本

Oxcart 0.1.1

内置 Docker 工具与智能体控制。

  • 自带 Docker CLI 29.9、Compose 5.6 和 Buildx 0.38。
  • Docker 上下文集成与安全的钥匙串凭据存储。
  • MCP 智能体连接,支持为各智能体设置权限或阻止访问。

需要 macOS 26.0 或更高版本

Oxcart 0.1.0

适用于 Apple 芯片的 Docker 兼容容器。

  • 兼容 Docker CLI、Compose 和 Buildx。
  • 自带运行时组件,可离线设置。
  • 按项目和 Git 分支整理端口。
  • MCP 集成,默认仅允许只读访问。
  • 经过验证的自动更新。

需要 macOS 26.0 或更高版本