Cua
by trycua
Cua's MCP server lets an agent describe a computer-use task in plain English and have it executed inside a real macOS, Linux, or Windows session.
About
run_cua_task hands a single natural-language instruction to Cua's Computer-Use Agent and runs it end to end: clicking, typing, and navigating a real desktop the way a person would. run_multi_cua_tasks chains several such instructions sequentially or concurrently, screenshot_cua captures the current screen for verification, and get_session_stats / cleanup_session manage the lifecycle of longer-running automation sessions.
The same CLI and MCP server binary runs unmodified on macOS, Windows, and Linux, and connects to Claude Code, Cursor, Codex, and other MCP clients. It's installed as a small PyPI package (Python 3.12+) on top of the broader open-source Cua computer-use agent and cross-OS VM driver stack.
Key features
- run_cua_task executes one natural-language computer-use instruction end to end on a real desktop
- run_multi_cua_tasks chains multiple tasks sequentially or concurrently
- screenshot_cua captures the current screen state for verification mid-task
- get_session_stats and cleanup_session manage long-running automation session lifecycles
- Same CLI/MCP server binary works unmodified across macOS, Windows, and Linux
- Built on Cua's open-source computer-use agent and cross-OS VM driver stack
Use cases
- Automating a repetitive desktop workflow across apps that have no API
- Running a QA or exploratory testing pass by describing steps instead of scripting them
- Chaining several desktop tasks into one hands-off automation run
- Capturing screenshots mid-automation so an agent (or a human) can verify progress
Available tools
run_cua_task
Executes a single Computer-Use Agent task from a natural-language instruction.
run_multi_cua_tasks
Runs multiple computer-use tasks in sequence or concurrently.
screenshot_cua
Captures a screenshot of the current computer-use session state.
get_session_stats
Returns usage and status statistics for an active or past session.
cleanup_session
Tears down and cleans up a computer-use session.
Frequently asked questions
What are the requirements to run it?
Python 3.12 or higher (below 3.14); after installing, it registers as an MCP server you point Claude Desktop, Cursor, or another MCP client at.
Does it need a virtual machine to work?
It can drive a live local desktop session directly, or one of Cua's sandboxed cross-OS VMs, depending on how it's configured.