Skip to content

computer-use-mcp v5.0.1-preview

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 08 Oct 10:39
6032370

MCP server for Claude Code (and any MCP client): control desktop apps
through their accessibility tree plus screenshots.

What's new in v5.0.1-preview

A fix for every Linux version so far (one call could take a KDE session
down), and a hub that shares the screen out by what each agent at work
needs (all commits).

  • Qt apps crashed when the server read them, KWin and Plasma too. The
    server asked each app for all of an element's properties at once
    (Properties.GetAll). Qt's accessibility bridge, up to Qt 6.9, reads a
    second argument from every such call, and that one has only one: the app
    crashes. KWin is a Qt program, so one list_apps (or doctor, which
    install.sh runs) closed every window, and a restarted KWin was crashed
    again by the next look. Each property is now asked for on its own, as Qt
    expects, and an element is asked for its extents and actions only when it
    says it has them (GTK printed warnings for the others). A new live test
    in CI reads, clicks and types in a real Qt app; the old code fails it.
  • The desktop's own processes are never asked anything: the compositor
    (KWin, GNOME Shell, Xwayland), Plasma, the session manager, portals,
    kded, KWallet, the polkit agent. Their pid comes from the bus, not from
    them, and they aren't listed as apps.
  • An app that quits while answering is left alone for 10 minutes (by
    its program, so a restarted copy is too): a call that crashes an app is
    never made to it again and again. Its windows are still listed, for
    screenshots and the mouse and keyboard.
  • doctor no longer switches the desktop's accessibility on; it says
    whether it is on. A server switches it on when it is off (Qt, Firefox and
    Chromium show nothing without it) and the last server to end switches it
    off again.
  • The hub shares the screen out by need, among the agents at work.
    Every server took a part of the screen as soon as it started, so other
    chats that never used the computer split it with the one at work (one
    agent working in a third of the screen, its glow around that third), and
    the parts were even or a fixed half, third or quarter. Now only agents at
    work have a part (one that makes no call for hub.release_after_secs,
    120, gives it up until its next call); each gets what its window needs
    (a full-size window and two small ones: a half and two quarters; 35% and
    65% windows: just that); a window the agent moved, resized, tiled or
    maximized itself stays where it put it while the others share the rest;
    a window that won't shrink keeps its least size; agents area takes a
    share such as 35%. The parts follow where the windows are, a change of
    under 4% of the screen moves nothing, and a window moves only when its
    agent looks next. agents list marks the idle ones. (The hub protocol is
    version 2: a server of this version and a hub of an older one don't mix.)
  • install.sh and install.cmd add the program as zero-use-computer
    when Claude Code keeps the name computer-use for itself
    ("this name
    is reserved"), as the panel's Connect page already did, and say if adding
    it failed. --uninstall removes either name.

If a KDE session crashed: log out and back in (or restart), then update. To
switch accessibility off again: busctl --user set-property org.a11y.Bus /org/a11y/bus org.a11y.Status IsEnabled b false and, on GNOME-based
desktops, gsettings set org.gnome.desktop.interface toolkit-accessibility false.

Install

Windows: download computer-use-mcp-windows-x64.zip, extract it to a
permanent folder (for example C:\Tools\computer-use-mcp), then double-click
install.cmd (or run claude mcp add --scope user computer-use -- C:\Tools\computer-use-mcp\computer-use-mcp.exe serve).
Check with claude mcp list.

As a plugin (Customize ▸ Plugins ▸ Upload local plugin): upload the full
computer-use-mcp-<os>.zip. If "Upload failed" appears and a computer-use plugin is
already installed, remove the old one first, then upload again.
Only if the full zip is refused for containing a program, use the small
computer-use-plugin-<os>.zip (about 50 KB, no program inside on purpose): first run
install.cmd -NoRegister (Windows) / ./install.sh --no-register from the full zip,
which copies the program to ~/.computer-use/bin; then upload the plugin zip.

macOS / Linux: download your platform's zip, extract it, run ./install.sh.
macOS needs Accessibility and Screen Recording permission for the app that runs Claude Code.

Every zip contains the binary, the installers, docs/CONNECT.md (Claude Code, Claude Desktop,
Codex, Cursor, VS Code, HTTP) and ready-to-copy configs in examples/.
The binaries are not code-signed, so Windows SmartScreen may ask you to confirm.

Full Changelog: v5.0.0-preview...v5.0.1-preview