MCP工具 是 AI Skill Hub 本期精选MCP工具之一。综合评分 8.0 分,整体质量较高。我们强烈推荐将其纳入你的 AI 工具库,帮助提升工作效率。
MCP工具 是一款遵循 MCP(Model Context Protocol)标准协议的 AI 工具扩展。通过 MCP 协议,它可以让 Claude、Cursor 等主流 AI 客户端直接访问和操作外部工具、数据源和服务,实现 AI 能力的无缝扩展。无论是文件操作、数据库查询还是 API 调用,都可以通过自然语言在 AI 对话中直接触发,极大提升生产效率。
MCP工具 是一款遵循 MCP(Model Context Protocol)标准协议的 AI 工具扩展。通过 MCP 协议,它可以让 Claude、Cursor 等主流 AI 客户端直接访问和操作外部工具、数据源和服务,实现 AI 能力的无缝扩展。无论是文件操作、数据库查询还是 API 调用,都可以通过自然语言在 AI 对话中直接触发,极大提升生产效率。
# 方式一:通过 Claude Code CLI 一键安装
claude skill install https://github.com/minghinmatthewlam/computer-use-mcp
# 方式二:手动配置 claude_desktop_config.json
{
"mcpServers": {
"mcp--": {
"command": "npx",
"args": ["-y", "computer-use-mcp"]
}
}
}
# 配置文件位置
# macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
# Windows: %APPDATA%/Claude/claude_desktop_config.json
# 安装后在 Claude 对话中直接使用 # 示例: 用户: 请帮我用 MCP工具 执行以下任务... Claude: [自动调用 MCP工具 MCP 工具处理请求] # 查看可用工具列表 # 在 Claude 中输入:"列出所有可用的 MCP 工具"
// claude_desktop_config.json 配置示例
{
"mcpServers": {
"mcp__": {
"command": "npx",
"args": ["-y", "computer-use-mcp"],
"env": {
// "API_KEY": "your-api-key-here"
}
}
}
}
// 保存后重启 Claude Desktop 生效
The open, agent-agnostic version of macOS computer use. A single signed Swift binary that exposes your Mac as a standard MCP server. Point Claude Code, Cursor, Codex CLI, Gemini CLI, or your own agent at it and the agent can see and operate the apps on your Mac — in the background, without hijacking your cursor or stealing focus.
Status: pre-1.0, used in production by the authors. macOS only. Runs while the Mac is unlocked (the system is kept from idle-sleeping during active sessions; if the screen locks, mutating tools pause with a recoverable error until you unlock).
🎬 Demo — coming soonPlaceholder for The agent drives an occluded background app — visible agent cursor gliding to each target, "Agent working" chip on screen — while the user keeps typing in a different app. No focus fight, no cursor hijack. |
Two ways to keep large windows from blowing up the tree:
- skeleton: true returns a shallow overview: the outline recurses a few levels, then a deeper container is emitted with a children_count annotation instead of its subtree, and stays a drill target. Pass that container's id as scope_element_id for a full scoped re-query. Skeleton is the overview, scope_element_id is the drill-in, and max_elements still bounds either. - Dense-collection viewport windowing (automatic): virtualized collections (lists, tables, outlines, grids) with many children are windowed to the on-screen slice — preferring the app's own visible-rows attributes, else a viewport-frame intersection — instead of a blind first-N prefix that ignores scroll position. Off-window items are summarised as a count on the container's line (never silently dropped), and materialised rows retain live-handle identity while the app keeps the same AX objects. Use scope_element_id to inspect a specific retained container with the full element budget.
Three capabilities landed on main this cycle; the README documents them so it stays truthful about current behavior.
- macOS 14+ - Permissions granted on first run: Accessibility and Screen Recording (Input Monitoring is not required). Run computer-use-mcp health_report to inspect current identity/permission state, or computer-use-mcp doctor --prompt when you intentionally want macOS prompts.
macOS 14 or newer. On first run the binary asks for Accessibility and Screen Recording permission (Input Monitoring is not required).
git clone https://github.com/minghinmatthewlam/computer-use-mcp.git
cd computer-use-mcp
swift build -c release
.build/release/computer-use-mcp version
The binary is .build/release/computer-use-mcp. Put it on your PATH, or point your MCP client's command at the absolute path. To build the stable-identity .app wrapper locally:
python3 scripts/build_app_bundle.py # local .app wrapper
python3 scripts/deploy_app_bundle.py # release build + install to ~/Applications
The server speaks MCP over stdio; every client launches it the same way — computer-use-mcp serve. Pick your client below.
<details> <summary><strong>Claude Code</strong></summary>
claude mcp add computer-use -- computer-use-mcp serve
That registers the server for the current project. Use -s user to register it globally for all projects. Verify with claude mcp list.
</details>
<details> <summary><strong>Cursor</strong></summary>
Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (per-project):
{
"mcpServers": {
"computer-use": { "command": "computer-use-mcp", "args": ["serve"] }
}
}
</details>
<details> <summary><strong>Codex CLI</strong></summary>
Add to ~/.codex/config.toml:
[mcp_servers.computer-use]
command = "computer-use-mcp"
args = ["serve"]
</details>
<details> <summary><strong>Gemini CLI</strong></summary>
Add to ~/.gemini/settings.json:
{
"mcpServers": {
"computer-use": { "command": "computer-use-mcp", "args": ["serve"] }
}
}
</details>
<details> <summary><strong>Any other MCP client</strong></summary>
Any MCP-compliant client that launches a stdio server works. The command is computer-use-mcp with a single argument serve:
{
"mcpServers": {
"computer-use": { "command": "computer-use-mcp", "args": ["serve"] }
}
}
If the binary is not on your PATH, use its absolute path as command.
</details>
Every option is settable as an environment variable (COMPUTER_USE_MCP_<KEY>) or a key in ~/.config/computer-use-mcp.json (env wins):
| Key (file) / variable | Effect |
|---|---|
cursor / COMPUTER_USE_MCP_CURSOR=0 | Hide the animated agent-cursor overlay (on by default; set 0 for headless/CI). |
cursor_idle_fade | Seconds of quiet before the agent cursor fades (default 12). |
cursor_topmost / COMPUTER_USE_MCP_CURSOR_TOPMOST=1 | Keep the agent cursor unconditionally above every window (escape hatch from target-relative z-order). |
status_chip / COMPUTER_USE_MCP_STATUS_CHIP=0 | Hide the "Agent working" pill shown on every display during activity (on by default). |
no_safety / COMPUTER_USE_MCP_NO_SAFETY=1 | Disable the safety policy entirely. |
confirm_apps | Apps (name or bundle id) where every action needs confirm. |
destructive | Extra destructive label substrings to gate. |
url_deny | URL substrings where browser actions are blocked outright (confirm does not override). |
url_confirm | Extra URL substrings where browser actions need confirm (defaults cover payment pages). |
ax_timeout | Per-call accessibility timeout in seconds (default 2). |
ax_element_timeout | Per-element AX messaging timeout during tree traversal (default 0.25s). |
viewport_probe_timeout | Tighter AX timeout for dense-collection viewport frame probes (default 0.05s). |
no_app_lease | Disable per-app session arbitration. |
app_lease_seconds | How long an app stays leased to a session after its last action (default 10). |
no_interference_yield | Disable yielding to real user input (yield is on by default). |
interference_idle_seconds | Hardware quiet time required before acting in the app the user is working in, or via the global cursor (default 1; 0 disables). |
no_sleep_assertion | Do not hold a prevent-idle-sleep assertion while tool calls are flowing. |
no_telemetry / COMPUTER_USE_MCP_NO_TELEMETRY=1 | Disable funnel/telemetry recording. |
show_meta / COMPUTER_USE_MCP_SHOW_META=1 | Dump _meta (focus / delivery / outcome) on call harness output. |
log / COMPUTER_USE_MCP_LOG=1 | Per-tool-call stderr log lines (name, ok/error, duration). |
max_actions_per_sec | Optional global throttle on tool calls (off by default). |
COMPUTER_USE_MCP_SKYLIGHT=1 | Env-only: enable the opt-in SkyLight SLEventPostToPid input rung (not a config-file key). |
How computer-use-mcp relates to the closest projects. This is a factual snapshot; cells marked "Not public" mean the project is closed-source and the behavior isn't documented, not that it's absent.
| **computer-use-mcp** | OpenAI Codex computer use | actuallyepic/background-computer-use | lahfir/agent-desktop | |
|---|---|---|---|---|
| **Protocol** | MCP over stdio (agent-agnostic) | Closed, Codex-only | HTTP loopback (no auth) | Rust CLI |
| **Background input** | AX action → per-window → per-pid event ladder, opt-in global cursor | Not public | Weaker; only physical path is an experimental WindowServer route | Global HID tap (raises windows) |
| **Capture API** | ScreenCaptureKit | Not public | CGWindowListCreateImage (deprecated) | screencapture shell-out |
| **Verified outcomes** | Yes (classification enum in _meta) | Not public | Yes | Yes |
| **Visible agent cursor** | Yes (self-drawn overlay) | Not public | No | No |
| **Multi-session** | Yes (shared daemon + per-app leases) | N/A (hosted) | No | No |
| **Safety gates** | Yes (destructive / URL / interference / screen-lock) | Provider-side | Minimal (no auth) | Not documented |
| **License** | MIT (open source) | Closed | Open source | Open source |
The two independent open-source efforts above both converged on verified outcomes ("don't trust an AX success — re-read and confirm the effect"), which is the model computer-use-mcp adopts in docs/outcome-contract.md. computer-use-mcp's distinguishing bets are the standard MCP surface, the shared-daemon multi-session model, and the visible agent cursor.
开源MCP服务器,提供macOS电脑使用情况,代码质量较高
AI Skill Hub 为第三方内容聚合平台,本页面信息基于公开数据整理,不对工具功能和质量作任何法律背书。
建议在沙箱或测试环境中充分验证后,再部署至生产环境,并做好必要的安全评估。
✅ MIT 协议 — 最宽松的开源协议之一,可自由商用、修改、分发,仅需保留版权声明。
经综合评估,MCP工具 在MCP工具赛道中表现稳健,质量优秀。如果你已有明确的使用需求,可以直接上手体验;如果还在评估阶段,建议对比同类工具后再做决策。
| 原始名称 | computer-use-mcp |
| 原始描述 | 开源MCP工具:Open, agent-agnostic MCP server exposing macOS computer use to any MCP client (C。⭐13 · Swift |
| Topics | mcpswiftmacOS |
| GitHub | https://github.com/minghinmatthewlam/computer-use-mcp |
| License | MIT |
| 语言 | Swift |
收录时间:2026-07-01 · 更新时间:2026-07-03 · License:MIT · AI Skill Hub 不对第三方内容的准确性作法律背书。
选择 Agent 类型,复制安装指令后粘贴到对应客户端