open-computer-use:面向 MCP 客户端的跨平台桌面控制服务

概述

open-computer-use 是一个把 Computer Use 能力封装为 Model Context Protocol(MCP)服务的开源项目。其目标不是提供单独的聊天界面,而是让 Codex、Claude Code、Gemini CLI 等 Agent 客户端能够调用统一的桌面操作工具;官方 README 声明支持 macOS、Linux 和 Windows,许可证为 MIT。^[来源:open-computer-use README]

对 macOS 而言,这一定位很实用:上层 Agent 负责理解用户意图与规划,下层服务提供应用列表、界面状态、按键、鼠标等可调用动作。它可与 UI-TARS Desktop 的独立视觉 Agent 形成互补,也可作为 Codex 工作流中对真实 GUI 的执行层,而不必重新实现一个完整的 Agent 对话产品。

本文以 2026-07-27 的项目 README 为准。该项目发展较快,工具名、支持的客户端和安装器写入的配置位置都应在执行前复核。

架构:把 GUI 动作作为工具提供

MCP Server 的基本作用是让宿主 Agent 发现和调用一组具名工具。open-computer-use 将本机的应用、可访问元素和输入动作暴露出来;宿主 Agent 则根据任务多轮调用它们。README 展示了 list_appsget_app_statepress_key 等直接调用示例,也提供将该服务写入 Codex MCP 配置的安装命令。^[来源:open-computer-use README]

用户任务 → Codex / Claude Code 等宿主 Agent → MCP 请求


                          open-computer-use 本机服务

                       macOS Accessibility / 屏幕录制权限


                                  应用状态、鼠标与键盘输入

这种分层的优点是可替换:同一 MCP 服务可以被不同模型或 Agent harness 使用;同一上层 Agent 也可以根据任务切换浏览器、文件、Shell 或 GUI 工具。代价是责任边界也被拆开了——MCP 服务“可以执行”不等于上层 Agent“能可靠判断何时执行”,需要在宿主侧控制确认、重试与审计。

macOS 前提与最小启动路径

官方 README 要求 macOS 14.0 或更高版本,并要求首次运行时授予 AccessibilityScreen Recording 权限。安装示例为:^[来源:open-computer-use README]

npm i -g open-computer-use
open-computer-use
 
# 由项目安装器向 Codex 配置写入 MCP Server
open-computer-use install-codex-mcp

最后一条命令会修改用户级 Codex 配置,因此应先阅读项目当前输出、确认目标配置文件和已有 MCP 项,再决定是否使用自动安装器。更显式的等价方式是按照 README 手动添加命令为 open-computer-use mcp 的 MCP Server 配置。不要在生产账号、共享账户或包含敏感聊天窗口的桌面上,为未知来源的进程直接授予两项系统权限。

项目还提供 doctor 检查权限、call 单次调用工具和本地 smoke test。它们适合先验证“服务能否看见目标应用”和“单步输入是否生效”,再交给上层 Agent 执行长流程。^[来源:open-computer-use README]

何时选择它

需求适配度原因
让已有 Agent 客户端获得 macOS GUI 能力MCP 形态正是其主设计目标
需要同时支持 macOS、Linux、Windows项目声明跨平台支持
想从 CLI 精确检查、单步调用与调试README 提供工具调用、诊断与测试入口
想直接使用带可视化流程编辑的独立桌面 Agent需要上层宿主 Agent;可转看 UI-TARS Desktop
希望完全由本地开源模型推理不确定服务开源不等于其宿主模型或所用 API 必然本地运行

macOS-use 一样,该项目依赖 macOS 的可访问性能力来做非侵入式控制;但前者是 Node/MCP 侧的执行服务,后者是 Python 中可组合的 Agent 库。选择标准应是既有 Agent 的接入协议与团队语言栈,而不是只比较“能不能点按钮”。

安全与可靠性

Screen Recording 会暴露屏幕内容,Accessibility 可以代表用户操作界面;两项权限叠加后,任何能调用 MCP Server 的上层 Agent 都成为高权限主体。至少应采取以下边界:

  1. 为执行 GUI 操作使用单独的受限 macOS 用户或测试机,避免与主工作账号混用。
  2. 在发送、支付、删除、权限授权、发布等节点要求人工确认;将“观察”和“执行”明确分离。
  3. 限制允许连接到该 MCP 服务的 Agent、模型和配置来源;不要复制不明教程中的全局配置。
  4. 优先使用应用的 API、CLI 或可审计的自动化接口;只有接口缺失时才使用 GUI。
  5. 测试结束后在系统设置中撤销不再需要的权限。

这些原则同样适用于 四种方案对比中的其他桌面控制方案;差异主要在模型与执行编排,权限风险的本质相同。

结论

open-computer-use 的亮点是把“控制电脑”变成可接入现有 Agent 的 MCP 能力。它适合已经使用 Codex、Claude Code 或其他 MCP 客户端的人,以可观察的单步工具调用逐渐扩展到 GUI 流程;不适合把系统级控制权限不加约束地交给长链路自主任务。