About Background Computer Use
Background Computer Use is an MCP server published by Panchangam18 in the Blockchain category: mCP server + skill library for driving macOS apps in the background — click, type, scroll, and inspect accessibility trees without activating apps or moving your cursor. Works with Claude Code, Claude Desktop, Cursor, Codex CLI, Goose, and any other MCP-capable LLM client.
The repository has 5 stars and 0 forks, with the last commit 6 months ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.
Install
git clone https://github.com/Panchangam18/background-computer-useThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Tools (14)
acquire_desktop(reason, ttl_s=30, wait_s=8)Hold the desktop exclusively across multiple tool calls so another agent can't slip in between your turns. See [Multiple agents](#multiple-agents-on-one-mac) below.
Parameters not published.
check_accessibility_permission()Diagnostic: confirm whether macOS Accessibility permission is granted, and if not, name the exact app bundle the user needs to toggle on.
Parameters not published.
click(app, element_index=… \x/y=…)`
Parameters not published.
desktop_status()Read-only: report which agent currently holds the desktop (if any).
Parameters not published.
drag(app, from_x, from_y, to_x, to_y)Smooth ~20-step drag via `CGEventPostToPid`.
Parameters not published.
get_app_state(app)Return the key window's accessibility tree, a window-scoped screenshot, and per-app `<app_hints>` (if any). Call this once per turn before interacting with an app.
Parameters not published.
list_appsDiscover running apps (display name + bundle id).
Parameters not published.
open_accessibility_settings()Open System Settings at Privacy & Security → Accessibility so the user can grant permission without hunting for the pane.
Parameters not published.
perform_secondary_action(app, element_index, action)Invoke a named AX action (`Pick`, `Increment`, `ScrollToVisible`, etc.). Refuses focus-stealing actions (`ShowMenu`, `ShowAlternateUI`, `Raise`) unless `allow_foreground_activation=True`.
Parameters not published.
press_key(app, key, element_index=…)xdotool-style keys (`Return`, `cmd+l`, `Page_Down`, `shift+command+t`). Can pre-focus a specific AX element.
Parameters not published.
Show all 14 tools
release_desktop()Release a previously-acquired long-lived lease.
Parameters not published.
scroll(app, element_index, direction, pages=1, smooth=True)Smooth, multi-page scroll. Tries AX `AXScroll*ByPage`, then scroll-bar `AXValue`, then Chromium AppleScript JS, then pixel wheel events. Refuses to silently steal focus.
Parameters not published.
set_value(app, element_index, value, submit=True)Set an AX value. Auto-falls-back to a `cmd+a` → `type_text` → `Return` typing sequence for Safari's URL bar and other sticky text fields.
Parameters not published.
type_text(app, text, element_index=…)Freeform Unicode typing via synthetic keyboard events.
Parameters not published.
Ask AI
Ask AI about Background Computer Use
Powered by Claude · Grounded in docs
Security checks
6 checks have not been run yet.