Lets AI agents control your desktop by reading accessibility trees and performing background inputs on macOS, Windows, and Linux.
Also known as munimtechnologies/computer-use, computer-use, munim-computer-use
- Stars
- 38
- Tools
- 2
- Downloads, 30 days
- —
- Latest version
- 0.1.0
- Last commit
- Nov 8, 2026
- License
- Apache-2.0
What is Computer Use MCP?
Computer Use lets AI agents control your desktop by reading accessibility trees and performing background inputs on macOS, Windows, and Linux. It exposes 2 tools, such as wait_timeout_ms, readiness.
Summary generated from the project's README
About Computer Use MCP server
Developers can grant AI agents direct control over their desktop environments using this MCP server. It functions as a computer-use agent backend that allows coding agents to interact with macOS, Windows, and Linux systems just as a human would. By reading accessibility trees to identify specific element IDs, the server enables agents to click and type without needing a vision model for every interaction.
A standout feature is the ability to perform background inputs, meaning the agent can operate in the background so your physical mouse and keyboard remain available for your own use. The server works with various MCP clients including Claude Code, Codex, Cursor, and MT Code. Setup involves downloading the platform-specific binary and registering it with your chosen agent via command line or configuration files. It provides tools to get app states, act by element ID, and verify actions through screenshots.
What you can do with it
- 1Automate cross-application workflowsAn AI agent can open a web browser to find specific information and then transfer that data into a local note-taking application.
- 2Perform background desktop tasksYou can have an agent running tasks on your computer while you continue to use your mouse and keyboard for other work.
- 3Precise UI interaction via element IDsInstead of guessing pixel coordinates, an agent can interact with specific buttons and controls using accessibility data.
Written from the project's README. Every use case is checked against a quote from it.
How to install Computer Use MCP
Formats verified 10 Nov 2026Add to CursorAdd to GooseInstall Computer Use MCP in Claude Code
$ claude mcp add computer-use -- npx -y munim-computer-useInstall Computer Use MCP in Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"computer-use": {
"command": "npx",
"args": [
"-y",
"munim-computer-use"
]
}
}
}Install Computer Use MCP in VS Code
.vscode/mcp.json
{
"servers": {
"computer-use": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"munim-computer-use"
]
}
}
}Install Computer Use MCP in VS Code CLI
$ code --add-mcp '{"name":"computer-use","type":"stdio","command":"npx","args":["-y","munim-computer-use"]}'Install Computer Use MCP in Claude Desktop
claude_desktop_config.json
{
"mcpServers": {
"computer-use": {
"command": "npx",
"args": [
"-y",
"munim-computer-use"
]
}
}
}Install Computer Use MCP in Codex
$ codex mcp add computer-use -- npx -y munim-computer-useInstall Computer Use MCP in Codex config.toml
~/.codex/config.toml
[mcp_servers.computer-use] command = "npx" args = ["-y", "munim-computer-use"]
Install Computer Use MCP in Gemini CLI
$ gemini mcp add -s user computer-use npx -- -y munim-computer-useInstall Computer Use MCP in Gemini settings.json
~/.gemini/settings.json
{
"mcpServers": {
"computer-use": {
"command": "npx",
"args": [
"-y",
"munim-computer-use"
]
}
}
}Computer Use MCP tools 2
Detected from the READMEwait_timeout_msreadiness
| wait_timeout_ms | — | |
| readiness | — |
Configuration
COMPUTER_USE_AGENT_CURSORSet to 0 to disable the agent pointer overlay
COMPUTER_USE_BROWSERSet to 0 to hide the browser_* tools
| Name | Description | |
|---|---|---|
| COMPUTER_USE_AGENT_CURSOR | Set to 0 to disable the agent pointer overlay | |
| COMPUTER_USE_BROWSER | Set to 0 to hide the browser_* tools |
Automated checks
Ran Nov 12, 2026Full report →Passed our automated checks. That is not a security audit: read the code and give the server the narrowest access it needs. How checks work
- Source repository linked and reachablePass
- Open source license (OSI)Pass
- Commit or release in the last yearPass
- Package name not close to a popular packagePass
- Remote endpoint uses HTTPSNot checked
- Destructive tools are labelledPass
- No hidden instructions to the modelPass
- No critical advisory in the package or its dependenciesPass
README
View on GitHubIntroduction
Computer Use is an open-source MCP server — a computer-use agent (CUA) backend — that lets any coding agent use your computer the way a person does. It reads the screen through accessibility trees, clicks and types in the background so your mouse stays yours, shows an agent pointer where it is working, zooms in on small text, and drives tabs in your signed-in Chrome — on macOS, Windows and Linux.
Works with Claude Code, Codex, Cursor and MT Code, or any other MCP client, with any model — no vision model is required for interaction.
Built by Munim Technologies as the Computer Use engine of MT Code, and published here on its own.
Table of contents
- Quick start
- Capability matrix
- Benchmarks
- Why it works well
- Works alongside you
- Apps and sites the agent may use
- Tools
- Repository layout
- Environment flags
- Embedding in an app
- Prompting your agent
- Contributing
- Credits and license
Quick start
- Download the latest binary for your platform from Releases (
munim-computer-use-macos-universal.zip,munim-computer-use-windows-x64.zip) or build from source. - Put it somewhere on your
PATH(/usr/local/bin/munim-computer-use, or%LOCALAPPDATA%\Programs\munim-computer-use\munim-computer-use.exe). - macOS only: run
munim-computer-use request-permissionsonce to be prompted for Accessibility and Screen Recording. - Register it with your agent:
# Claude Code — fastest: the npm launcher fetches the signed binary on first run.
# Add `--scope user` to register it for every project instead of just this one.
claude mcp add munim-computer-use -- npx -y munim-computer-use
# or point at a downloaded binary
claude mcp add munim-computer-use -- /usr/local/bin/munim-computer-use
# Codex — writes the entry below into ~/.codex/config.toml for you (needs a Codex CLI
# with `codex mcp`; check with `codex mcp --help`)
codex mcp add munim-computer-use -- npx -y munim-computer-use
# Codex — ~/.codex/config.toml, if you would rather edit it yourself
[mcp_servers.munim-computer-use]
command = "npx"
args = ["-y", "munim-computer-use"]
# Cursor — no MCP subcommand in its CLI, so write the config. ~/.cursor/mcp.json applies
# to every project; .cursor/mcp.json in a repo applies to that one.
mkdir -p ~/.cursor && [ -s ~/.cursor/mcp.json ] || echo '{}' > ~/.cursor/mcp.json
jq '.mcpServers["munim-computer-use"] = {"command":"npx","args":["-y","munim-computer-use"]}' \
~/.cursor/mcp.json > ~/.cursor/mcp.json.tmp && mv ~/.cursor/mcp.json.tmp ~/.cursor/mcp.json
// Cursor — the entry that produces, in .cursor/mcp.json
{ "mcpServers": { "munim-computer-use": { "command": "npx", "args": ["-y", "munim-computer-use"] } } }
Then ask: "Open Safari, find the cheapest flight to Denver on Tuesday and put it in a note." The agent reads the UI with get_app_state, acts by element id, and verifies with screenshot.
Capability matrix
Munim Computer Use is the highlighted first column; the others are the computer-use servers people reach for. each cell comes from that project's own README or docs in September and October 2026 (sources under Credits and license). ✅ present · ❌ absent or not documented · ⚠️ partial.
| Capability | Munim Computer Use | Cua Driver | Codex Computer Use | OpenAI Agents API | Anthropic reference demo | Windows-MCP | MacOS-MCP | open-computer-use | computer-use-mcp (zavora) | Notes |
|---|---|---|---|---|---|---|---|---|---|---|
| macOS | ✅ | ✅ | ✅ | n/a | ❌ | ❌ | ✅ | ✅ | ✅ | The Anthropic demo drives a Linux desktop inside Docker, not your machine. The OpenAI Agents API (September 2026) runs a browser OpenAI hosts, so it never drives your machine either. |
| Windows | ✅ | ✅ | ✅ | n/a | ❌ | ✅ | ❌ | ✅ | ✅ | Windows-MCP is Windows only; MacOS-MCP is macOS only. |
| Linux | ✅ | ✅ | ❌ | n/a | ✅ (sandbox) | ❌ | ❌ | ✅ | ✅ | Munim Computer Use uses AT-SPI + X11; native Wayland apps get element actions but not coordinate clicks. |
| Accessibility tree with element ids | ✅ | ✅ | ⚠️ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | Codex reads the accessibility tree first on macOS and works from screenshots on Windows; the Agents API and the Anthropic demo are screenshot-driven. Ids let the agent press the button instead of a pixel. |
| Background input (your mouse never moves) | ✅ | ✅ | ⚠️ | n/a | n/a | ❌ | ❌ | ❌ | ❌ | Munim Computer Use addresses events to the target window: always on macOS (SkyLight and per-process events), for UI Automation patterns and classic Win32 controls on Windows; other Windows UI and all Linux pointer input (XTEST) still move the real pointer. Codex works in the background on macOS with cursors of its own, and takes over the pointer on Windows. Cua Driver delivers in the background by default and falls back to the foreground when that does not land. The other servers in this table drive the real cursor. |
| Agent pointer overlay | ✅ | ✅ | ✅ | ❌ | ❌ | ⚠️ | ❌ | ❌ | ❌ | Windows-MCP flashes a border around captures; Codex and Cua Driver draw their own cursor on your screen. |
| Zoom into a region at full resolution | ✅ | ✅ | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ | Anthropic's toolset has zoom; here it is a tool on every platform. |
| Screenshots carry screen-coordinate mapping | ✅ | ⚠️ | n/a | n/a | n/a | ❌ | ❌ | ❌ | ❌ | Origin and pixels-per-point in every capture, so clicks from Retina or downscaled images land. |
| Hover, wait, label query | ✅ | ⚠️ | ⚠️ | ❌ | ⚠️ | ✅ | ⚠️ | ❌ | ⚠️ | Windows-MCP has Wait/WaitFor; MacOS-MCP has Wait; Anthropic has wait/mouse_move. |
| Your signed-in Chrome, own tab group or yours | ✅ | ⚠️ | ⚠️ | ❌ | ❌ | ⚠️ | ❌ | ❌ | ❌ | Codex uses its in-app browser; Cua Driver attaches to a browser over CDP; Windows-MCP reads the DOM of open browsers. Munim Computer Use opens its own labelled tab group in your real Chrome, and can also take over a tab you already have open when you ask it to. |
| Act and observe in one call | ✅ | ✅ | n/a | n/a | ✅ | ❌ | ❌ | ❌ | ❌ | return_state on any action appends the fresh accessibility tree or page snapshot, so one call acts and checks. Cua Driver's run_steps runs several actions and reports what changed. The Anthropic demo returns a screenshot after each action; Codex and the Agents API run the loop themselves. |
| Several actions in one call | ✅ | ✅ | n/a | n/a | ❌ | ⚠️ | ❌ | ❌ | ✅ | Cua Driver and computer-use-mcp (zavora) run a list of steps in one call with run_steps; Windows-MCP's MultiSelect and MultiEdit act on several elements at once. Munim Computer Use's run_steps does the same, checks the whole list before running any of it, and stops at the first failure. |
| Read a page's text in a signed-in tab | ✅ | ⚠️ | ❌ | ❌ | ❌ | ⚠️ | ❌ | ❌ | ❌ | browser_read returns the page as text with headings, in chunks, with a query filter, from a background tab. Windows-MCP scrapes pages. |
| Sign-in without the model seeing the password | ✅ | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | browser_request_credentials opens a Chrome window naming the site's real origin; what the user types goes into the page and never into the conversation. The Agents API hands sign-in to the developer's app the same way. Desktop password fields refuse typing by default. |
| Per-app and per-site allow / ask / block rules | ✅ | ❌ | ⚠️ | ⚠️ | ❌ | ❌ | ❌ | ❌ | ❌ | A policy file the user controls; ask shows an approval prompt once per task. Codex asks before each new app and keeps an "Always allow" list; the Agents API asks the developer's app before each new website. |
| Works with any MCP client | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | Codex Computer Use is Codex only; the Anthropic demo is Claude only. |
| Identical tool surface on every platform | ✅ | ⚠️ | n/a | n/a | n/a | n/a | n/a | ⚠️ | ✅ | 38 tools with byte-identical schemas across the Swift and Rust servers. Cua Driver keeps shared parameters in step with a CI check, with a few tools on one platform only. |
| Prebuilt signed binaries + npm launcher | ✅ | ✅ (script) | ✅ | n/a | ❌ | ❌ | ❌ | ✅ (npm) | ✅ (npm) | macOS universal (Developer ID signed) and Windows x64 on Releases. |
| Open source | ✅ Apache-2.0 | ✅ MIT | ❌ | ❌ | ✅ | ✅ MIT | ✅ MIT | ✅ MIT | ✅ MIT |
Also looked at: mediar-ai/mcp-server-macos-use (macOS, accessibility, real input), deploymenttheory/windows-mcp-server (Windows, UIA Invoke patterns, WaitFor), nuphus-mcp (OCR + bring-your-own vision model, CDP Chrome), computer-control-mcp (PyAutoGUI + OCR), and microsoft/playwright-mcp (browser only). Corrections welcome — open an issue with a link.
The chart counts the table above (n/a cells are left out), so
Computer Use MCP questions
How do I add Computer Use MCP to Claude Code?
Run claude mcp add computer-use -- npx -y munim-computer-use in your terminal. Add --scope user to make it available in every project.
How do I add Computer Use MCP to Cursor?
Open ~/.cursor/mcp.json and add the server under mcpServers, using the Cursor config shown in the install section above.
What tools does Computer Use MCP provide?
It exposes 2 tools, including wait_timeout_ms, readiness.
Will the agent move my mouse while it is working?
No, it performs background input so your mouse remains under your control.
How do I grant permissions on macOS?
You must run the command 'munim-computer-use request-permissions' to be prompted for Accessibility and Screen Recording permissions.