Cua Driver is a generic Model Context Protocol (MCP) server. Any agent harness, IDE extension, or workflow tool that can launch a local stdio MCP process can connect to it, discover the full computer-use tool catalog, and issue actions against the desktop. This page explains the server’s configuration, tool naming conventions, introspection commands, and integration patterns for common environments.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/trycua/cua/llms.txt
Use this file to discover all available pages before exploring further.
How Cua Driver exposes MCP
Runningcua-driver mcp starts a stdio MCP server and blocks until stdin closes. The server implements the MCP protocol version 2025-06-18 and advertises 54 tools.
Process ownership depends on platform:
- macOS — bare
cua-driver mcpproxies to the installedCuaDriver.appdaemon, which holds the stable Accessibility and Screen Recording identity. Pass--directto make the MCP process itself own the runtime (useful when the spawning app already holds the required TCC grants). - Windows and Linux — bare
cua-driver mcpowns its SDK runtime directly and shuts it down on stdin EOF. Pass--socket <endpoint>to connect to an existing daemon instead.
JSON MCP configuration block
Paste this block into any MCP configuration file to register Cua Driver. Replace thecommand value with the absolute path returned by which cua-driver or cua-driver mcp-config:
PATH:
Use absolute paths in production configurations. IDE extensions and agent runtimes often inherit a reduced
PATH that does not include the directory where cua-driver is installed.Tool naming convention
All 54 Cua Driver tools usesnake_case names. The same name works in MCP (tools/call) and in the CLI (cua-driver <name> '<JSON-args>'):
| Category | Example tools |
|---|---|
| Session | start_session, end_session |
| Discovery | list_apps, list_windows |
| Inspection | get_window_state, get_accessibility_tree |
| Navigation | launch_app, activate_window, move_window |
| Input | click, double_click, right_click, drag, scroll, type_text, press_key, hotkey |
| Browser | get_text, query_dom, click_element, execute_javascript |
| Cursor | move_cursor, get_cursor_position |
| Config | set_config, check_permissions |
| Recording | start_recording, stop_recording |
CallTool.Result envelopes: a text content block prefixed with a ✅ summary (or the error reason on failure), plus optional image or structured-content blocks for tools that produce screenshots or accessibility trees.
Inspect available tools
List every tool the running server exposes:describe output shows the tool’s description, all input parameters with their types and whether they are required, and the response shape. Use this when writing a filtered allow-list or when debugging unexpected tool behavior.
The --direct flag
On macOS, --direct makes the MCP process own the Cua Driver runtime instead of proxying to the daemon:
--direct when the process that launches the MCP server already holds Accessibility and Screen Recording permission — for example, inside a signed Electron app that owns its TCC row. The process must not combine --direct with --socket.
Claude Code
Register Cua Driver in Claude Code with one command:Cursor
Add Cua Driver to Cursor’s MCP configuration file (.cursor/mcp.json in your project or the global config):
tools/list on the next session start and make all 54 tools available in its agent panel.
Muse Code and other IDE integrations
Any IDE that implements the MCP client protocol and supports stdio transport can connect to Cua Driver. The configuration shape is identical across all of them:- Muse Code
- Generic stdio harness
Session management across tools
Most Cua Driver tools accept an optionalsession parameter. Passing a consistent session name across calls ties observations, input actions, and recordings to the same logical run:
finally block so recordings and state are always cleaned up.
macOS permissions
On macOS, the process or daemon that owns the Cua Driver runtime must have Accessibility and Screen Recording permission. Verify the status:Related resources
- SDK, MCP, and process hosting — detailed explanation of same-process, private worker, and daemon topologies.
- MCP Tools reference — full auto-generated reference for all 54 tools.
- MCP Tool Notes — cross-cutting parameter contracts and response shapes.
- Claude Code integration
- OpenAI Codex integration
- Local Models integration