经 AI Skill Hub 精选评估,Linux桌面控制 获评「强烈推荐」。这款MCP工具在功能完整性、社区活跃度和易用性方面表现出色,AI 评分 8.0 分,适合有一定技术背景的用户使用。
Linux桌面控制 是一款遵循 MCP(Model Context Protocol)标准协议的 AI 工具扩展。通过 MCP 协议,它可以让 Claude、Cursor 等主流 AI 客户端直接访问和操作外部工具、数据源和服务,实现 AI 能力的无缝扩展。无论是文件操作、数据库查询还是 API 调用,都可以通过自然语言在 AI 对话中直接触发,极大提升生产效率。
Linux桌面控制 是一款遵循 MCP(Model Context Protocol)标准协议的 AI 工具扩展。通过 MCP 协议,它可以让 Claude、Cursor 等主流 AI 客户端直接访问和操作外部工具、数据源和服务,实现 AI 能力的无缝扩展。无论是文件操作、数据库查询还是 API 调用,都可以通过自然语言在 AI 对话中直接触发,极大提升生产效率。
# 方式一:通过 Claude Code CLI 一键安装
claude skill install https://github.com/agent-sh/computer-use-linux
# 方式二:手动配置 claude_desktop_config.json
{
"mcpServers": {
"linux----": {
"command": "npx",
"args": ["-y", "computer-use-linux"]
}
}
}
# 配置文件位置
# macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
# Windows: %APPDATA%/Claude/claude_desktop_config.json
# 安装后在 Claude 对话中直接使用 # 示例: 用户: 请帮我用 Linux桌面控制 执行以下任务... Claude: [自动调用 Linux桌面控制 MCP 工具处理请求] # 查看可用工具列表 # 在 Claude 中输入:"列出所有可用的 MCP 工具"
// claude_desktop_config.json 配置示例
{
"mcpServers": {
"linux____": {
"command": "npx",
"args": ["-y", "computer-use-linux"],
"env": {
// "API_KEY": "your-api-key-here"
}
}
}
}
// 保存后重启 Claude Desktop 生效
computer-use-linux reads accessibility trees, takes screenshots, and drives clicks, scrolls, and keystrokes across GNOME, KDE/KWin, Hyprland, i3, and COSMIC — Wayland-first, X11 best-effort.
npm install -g @agent-sh/computer-use-linux
computer-use-linux doctor | jq .readiness
The Rust crate is published as computer-use-linux and the npm wrapper as @agent-sh/computer-use-linux. Prebuilt binaries ship with the latest release.
MCP tools exposed by the server:
Diagnostics - doctor — single-shot JSON readiness report (platform, portals, accessibility, windowing, input, readiness summary, and a capability map of available backends) - setup_accessibility — enables GNOME's org.gnome.desktop.interface toolkit-accessibility setting so toolkit apps expose AT-SPI trees - setup_window_targeting — installs and enables the bundled GNOME Shell extension when org.gnome.Shell.Introspect is locked down
Discovery - list_apps — running desktop apps visible to the AT-SPI registry - list_windows — compositor windows with title, app id, wm_class, focus state, client type (Wayland/X11), and bounds - focused_window — the window currently holding keyboard focus - get_app_state — combined screenshot + accessibility tree for a chosen app, with element indices that the input tools accept - screenshot — capture the screen as a PNG; can target a window, which is raised to the front and cropped to just that window
Input - click — by element index, semantic selector, or pixel coordinates - drag — pixel-coordinate drag (start / end) - scroll — page-based scroll on an element or at a pixel location - press_key — keys / chords; can focus a window or terminal first - type_text — literal text input, optionally targeted at a window or terminal
Semantic actions - perform_action — invoke any AT-SPI action exposed by an element (Press, Activate, Toggle, …); defaults to the primary action - set_value — write to a settable accessibility element (text fields, sliders, spinners)
Navigation - activate_window — focus a window by window_id, pid, app_id, wm_class, title, or terminal selectors
COSMIC users do not need a second package or a separate helper install when using ./install.sh, cargo install, or the npm wrapper. Those paths install computer-use-linux-cosmic alongside the main binary automatically. Only manual prebuilt-binary installs need you to copy both release assets.
Installs system packages on Debian/Ubuntu, Fedora/RHEL-like, or Arch-like distros; installs Rust if needed; builds both release binaries; installs them to ~/.local/bin; enables ydotoold as a user service; enables GNOME AT-SPI settings when running under GNOME; and installs the bundled GNOME Shell extension on GNOME Wayland.
```bash git clone https://github.com/agent-sh/computer-use-linux cd computer-use-linux ./install.sh
computer-use-linux doctor | jq .readiness ```
Installs the Rust binaries from crates.io. You still handle the system-level pieces yourself: ydotoold, AT-SPI, desktop portals, and the GNOME extension if you need the GNOME Wayland exact-focus backend.
cargo install computer-use-linux
computer-use-linux doctor
For unreleased changes from main, install directly from Git:
cargo install --git https://github.com/agent-sh/computer-use-linux
Then, as needed:
sudo apt install ydotool at-spi2-core # or your distro's equivalent
systemctl --user enable --now ydotoold
computer-use-linux setup # gsettings AT-SPI bridge
computer-use-linux setup-window-targeting # GNOME Shell extension
The Linux build of Codex Desktop already bundles this binary as a plugin. You don't need to wire it up manually — the plugin definition lives in codex-desktop-linux under its plugins/ directory and is enabled by default. To upgrade the plugin in place, replace the binary it ships with the one from this repo's release assets.
claude mcp add --scope user computer-use-linux -- computer-use-linux mcp
Good for users who already have Node.js and want a no-Rust install. The npm package downloads and verifies the matching main and COSMIC helper binaries during install, then the wrapper sets COMPUTER_USE_LINUX_COSMIC_HELPER to the bundled helper automatically.
npm install -g @agent-sh/computer-use-linux
computer-use-linux doctor
You will still need ydotoold running and AT-SPI enabled (run computer-use-linux setup and the systemd commands above).
Linux x86_64 / aarch64 builds are published with each tag. Each binary ships a .sha256 next to it.
target=x86_64-unknown-linux-gnu
base=https://github.com/agent-sh/computer-use-linux/releases/latest/download
for binary in computer-use-linux computer-use-linux-cosmic; do
asset="$binary-$target"
curl -L -O "$base/$asset"
curl -L -O "$base/$asset.sha256"
sha256sum -c "$asset.sha256"
install -m 0755 "$asset" "$HOME/.local/bin/$binary"
done
You will still need ydotoold running and AT-SPI enabled (run computer-use-linux setup and the systemd commands above).
inherit_mcp_toolsets: true
If you installed the binary somewhere that is not on `PATH`, pass the absolute path as `--command`.
Restart Hermes after editing the config. Hermes registers the tools as `mcp_computer_use_linux_<tool>` and creates the `mcp-computer-use-linux` runtime toolset.
You can verify both sides before asking Hermes to use the desktop:
bash computer-use-linux doctor | jq .readiness hermes skills inspect agent-sh/computer-use-linux/computer-use-linux hermes chat --toolsets mcp-computer-use-linux -q "List the current desktop windows." ```
For one-off installs without adding the tap first, Hermes also accepts hermes skills install agent-sh/computer-use-linux/skills/computer-use-linux.
Most setups need none of these — doctor and the installers pick sensible defaults. They exist for overriding auto-detected paths and input backends.
Server runtime (set in the MCP host's environment):
| Variable | Effect |
|---|---|
COMPUTER_USE_LINUX_COSMIC_HELPER | Path to the computer-use-linux-cosmic helper when it isn't next to the binary or on PATH. |
CU_DISABLE_ABS_POINTER | Disable the uinput absolute pointer and click through ydotool instead (for setups where the abs-pointer device misbehaves). |
COMPUTER_USE_LINUX_FORCE_PORTAL_POINTER / …_KEYBOARD | Always route pointer / keyboard through the RemoteDesktop portal on Wayland, skipping auto-detection. |
COMPUTER_USE_LINUX_FORCE_YDOTOOL_POINTER / …_KEYBOARD | Always route pointer / keyboard through ydotool, skipping the portal and KDE clipboard paths. |
npm wrapper (set during npm install, or before running):
| Variable | Effect |
|---|---|
COMPUTER_USE_LINUX_BIN | Run this binary instead of the one bundled by the npm package. |
COMPUTER_USE_LINUX_DOWNLOAD_BASE | Override the GitHub release base URL the installer downloads from (mirrors, air-gapped hosts). |
COMPUTER_USE_LINUX_SKIP_DOWNLOAD=1 | Skip the post-install binary download entirely. |
COMPUTER_USE_LINUX_LOCAL_BINARY / …_LOCAL_COSMIC_HELPER | Install from a local build instead of downloading (used by CI and local testing). |
computer-use-linux doctor is the source of truth. Common failure modes and fixes:
accessibility.at_spi_bus.ok = false — AT-SPI registry isn't running or the toolkit bridge is off. Fix: computer-use-linux setup (or call the setup_accessibility MCP tool). Restart the apps you want to drive.windowing.gnome_shell_introspect.ok = false and gnome_shell_extension_dbus.ok = false — GNOME blocks introspection and the extension isn't installed. Fix: computer-use-linux setup-window-targeting, then log out and log back in.input.ydotool_socket.ok = false — daemon isn't running. Fix: systemctl --user enable --now ydotoold. If the unit doesn't exist, install the ydotool package and rerun ./install.sh (or copy the unit from systemd/ydotoold.service in this repo).input.uinput.ok = false — /dev/uinput isn't accessible to your user. Fix: add yourself to the input group (sudo usermod -aG input $USER) and re-login. On distros that ship uinput as a kernel module without auto-loading it, add uinput to /etc/modules-load.d/.xdg-desktop-portal or its backend (-gnome, -gtk, -kde, -wlr) crashed. Fix: check journalctl --user -u xdg-desktop-portal -u xdg-desktop-portal-gnome --since '5 min ago' and restart the relevant unit.doctor.windowing.backends. KWin needs session-bus scripting; Hyprland needs hyprctl; i3 needs i3-msg and its IPC socket. COSMIC needs computer-use-linux-cosmic, which the standard installers provide automatically; if you copied binaries by hand, copy the helper too or set COMPUTER_USE_LINUX_COSMIC_HELPER.get_app_state with include_screenshot: false and rely on AT-SPI until the portal backend is healthy.type_text types into the wrong window — pass an explicit target (window_id, pid, wm_class, title, or for terminals tty / terminal_pid / terminal_command / terminal_cwd). Without a target, input goes to whatever window currently has compositor focus.If doctor is green and a specific tool still misbehaves, file an issue with the JSON output of doctor and the failing tool's request payload.
高质量的开源MCP工具
AI Skill Hub 为第三方内容聚合平台,本页面信息基于公开数据整理,不对工具功能和质量作任何法律背书。
建议在沙箱或测试环境中充分验证后,再部署至生产环境,并做好必要的安全评估。
✅ MIT 协议 — 最宽松的开源协议之一,可自由商用、修改、分发,仅需保留版权声明。
AI Skill Hub 点评:Linux桌面控制 的核心功能完整,质量优秀。对于Claude Desktop / Claude Code 用户来说,这是一个值得纳入个人工具库的选择。建议先在非生产环境试用,再逐步推广。
| 原始名称 | computer-use-linux |
| 原始描述 | 开源MCP工具:Linux desktop control over MCP — AT-SPI, GNOME Shell, Wayland portals, ydotool。⭐55 · Rust |
| Topics | linuxmcpdesktop |
| GitHub | https://github.com/agent-sh/computer-use-linux |
| License | MIT |
| 语言 | Rust |
收录时间:2026-05-25 · 更新时间:2026-05-26 · License:MIT · AI Skill Hub 不对第三方内容的准确性作法律背书。
选择 Agent 类型,复制安装指令后粘贴到对应客户端