Model-agnostic computer-use MCP: screenshot, safety-gated actions, Windows UIA targeting.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag β we're steadily working through the catalog.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
npm launcher for the open-compute MCP server β model-agnostic computer-use tools exposed over the Model Context Protocol (MCP).
EN | DE
π¦ View on npm β β’ π Security Policy β’ βοΈ Licenses β’ π€ LLM Context (llms.txt)
[!NOTE] AI Assistant / Agent Integration: This repository contains an
llms.txtfile providing structured, machine-readable specifications of tools, safety modes (OC_SAFETY_MODE), and client configuration examples for RAG crawlers and autonomous agent frameworks.
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.
talk), screen chat messaging (chat), directory monitoring (watch_dir), and macro replay (rec_replay).This package is a thin launcher. It contains no server logic β it spawns the Python open-compute server (pulled from GitHub) and pipes MCP stdio through. Real screen capture and input require the interactive Windows desktop session.
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.| Tool | Purpose |
|---|---|
capture | Return one-shot observation metadata plus an image (optionally one exact window). |
do | Execute a safety-gated action; coordinates require observation_id + issued window descriptor/token. |
tree | Return UIA elements and a one-shot observation ID for their coordinates. |
click_name | Exact-first, ambiguity-safe click in a required issued window, with score/alternatives. |
invoke | Exact-first, click-free UIA activation in a required issued window. |
list_windows | List stable window/process IDs, exact titles, issued tokens, rects and centers. |
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 a configurable pre-action color/text countdown, then the mode-colored overlay, with owner/session lease and bounded TTL. |
signal_hide | Hide the signal overlay. |
signal_status | Owner/session/mode/visible/expires_at + pending abort message. |
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. |
talk | Push-to-talk voice note β WAV path (hold key, speak, release; STT/TTS model-side). |
All coordinates are normalized 0..1 relative to the virtual desktop. Tool
descriptions are localized in six languages (de/en/es/ja/ru/zh) via OC_LANGUAGE.
do also accepts the hold primitives mouse_down / mouse_up / key_down /
key_up for press-and-hold sequences (rubber-band selection, modifier-held
clicking, game input); anything still held is released when the server stops.
capture(window=...) falls back to Windows.Graphics.Capture when a plain grab of
a hardware-composited window (Roblox Studio, Blender, a GPU-accelerated browser)
comes back all-black β install the wgc extra for that.
The v0.8 Python engine enforces observe β one action β automatic refresh. Keep
the full descriptor or window_token from list_windows, then pass it as
expected_window together with the latest observation_id from capture or
tree. click_name/invoke require that issued window too. Reuse, changed
state, focus mismatch, covered windows, and ambiguous UIA targets are rejected
before input. type returns requested/sent character
counts and complete/partial status without echoing the text. Signals have a
hard TTL and are removed at action turn end unless keep_signal=true.
An explicit signal_show starts the engine's configured pre-action grace
period. The static grace color is distinct from the mode color and the visible
text counts down Start in N Sekunden once per second. At zero, both phase and
color switch once to active. signal_status exposes the same phase, remaining
seconds, current color, and screenreader label. Duration, grace color, and text
template come from OC_SIGNAL_GRACE_SECONDS / OC_SIGNAL_CONFIG; 0 skips the
countdown. The design uses no flashing, pulsing, or motion animation.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/open-compute-computer-use)<a href="https://allmcps.com/mcp/open-compute-computer-use"><img src="https://allmcps.com/api/badge/open-compute-computer-use?style=directory" alt="Open Compute (computer Use) on AllMCPs" /></a>