Model-agnostic computer-use MCP: screenshot, safety-gated actions, Windows UIA targeting.
Most browser automation work still happens through a UI a human drives. Open MCP server moves it into the conversation instead. Model-agnostic computer-use MCP: screenshot, safety-gated actions, Windows UIA targeting.
The MCP client is the reasoner (no API key, model-agnostic): it calls capture to see the screen, then acts with do / click_name / invoke. This is the keyless Mode-A loop of open-compute, but as native tool-calls.
The server publishes 14 tools. What each one is for:
capture — Screenshot the screen → returned as an image (optionally a single window)tree — List UI elements via Windows UIA (name/role/center_norm)click_name — Resolve an element by name and click itinvoke — Click-free activation of an element via UIA patternslist_windows — List open windows with exact titles, rects and normalized centers (read-only)get_screen_size — Virtual-desktop geometry + per-monitor breakdown (read-only)watch_dir — Watch directories for file-system changespush_status — Feed-manager status (read-only)rec_replay — Replay a .clirec macro (needs the optional clirec package)signal_show — Show the screen-usage signal overlay: glowing border + cursor ring colored per mode (control=red, observe=blue, …); persists in the server processsignal_hide — Hide the signal overlaysignal_status — Overlay state + collect a pending abort-hotkey message (consumed on read)Configuration is passed through the environment: OC_SAFETY_MODE. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.
uvx to fetch open-compute (with the mcp extra) from GitHub on first run — the mcp extra tracks the GitHub repo, so this works regardless of PyPI release timing. - Windows for real capture/input (mss + UIA). Other platforms import the tools but cannot drive a desktop.Because this one is hosted, setup is mostly authentication — you point your client at the endpoint and approve access. Nothing runs on your machine, so there is no runtime to keep patched.
Plenty of browser automation servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. Open's toolset — capture, tree, click_name and 11 more — is a fair guide to whether it matches your workflow. It is maintained by lukisch; worth a glance at recent repository activity before you build anything load-bearing on it.
SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.
| Tool | What it does |
|---|---|
| capture | Screenshot the screen → returned as an image (optionally a single window). |
| tree | List UI elements via Windows UIA (name/role/center_norm). |
| click_name | Resolve an element by name and click it. |
| invoke | Click-free activation of an element via UIA patterns. |
| list_windows | List open windows with exact titles, rects and normalized centers (read-only). |
| get_screen_size | Virtual-desktop geometry + per-monitor breakdown (read-only). |
| watch_dir | Watch directories for file-system changes. |
| push_status | Feed-manager status (read-only). |
| rec_replay | Replay a .clirec macro (needs the optional clirec package). |
| signal_show | Show the screen-usage signal overlay: glowing border + cursor ring colored per mode (control=red, observe=blue, …); persists in the server process. |
| signal_hide | Hide the signal overlay. |
| signal_status | Overlay state + collect a pending abort-hotkey message (consumed on read). |
| signal_abort | Ask the human for a short abort reason; the message is returned for the model. |
| chat | Human→model message about screen content, optionally with screenshot. |
{
"mcpServers": {
"open-compute": {
"command": "npx",
"args": ["-y", "open-compute-mcp"]
}
}
}Configuration as documented by the project. Restart the client after saving.
uvx to fetch open-compute (with the mcp extra) from GitHub on first run — the mcp extra tracks the GitHub repo, so this works regardless of PyPI release timing. - Windows for real capture/input (mss + UIA). Other platforms import the tools but cannot drive a desktop.| Variable | Description | Required |
|---|---|---|
| OC_SAFETY_MODE | Configuration value read at startup. | Optional |
Microsoft's official browser automation server — drive a real browser through the accessibility tree, no screenshots needed.
Industrial-strength web extraction — render, scrape, crawl and search entire sites into clean markdown.
The original Chromium automation reference server — simple, screenshot-driven browser control.
Give your coding agent the full DevTools toolbox: traces, network, console, heap snapshots and Lighthouse.
Puppeteer-powered browser control that drives pages from the accessibility tree instead of pixels.
Cloud browsers for AI agents — automation sessions that run in Browserbase's fleet, not on your machine.