Computer Control
MCP server that provides computer control capabilities, like mouse, keyboard, OCR, etc. using PyAutoGUI, RapidOCR, ONNXRuntime. Similar to 'computer-use' by Anthropic. With Zero External Dependencies.
What is Computer Control?
Computer Control is a Model Context Protocol (MCP) server that allows AI assistants like Claude, Cursor, and VS Code to mcp server that provides computer control capabilities, like mouse, keyboard, ocr, etc. using pyautogui, rapidocr, onnxruntime. similar to 'computer-use' by anthropic. with zero external dependencies.
MCP server that provides computer control capabilities, like mouse, keyboard, OCR, etc. using PyAutoGUI, RapidOCR, ONNXRuntime. Similar to 'computer-use' by Anthropic. With Zero External Dependencies.
This server falls under the Browser Automation category on MCPgee, the world's largest MCP server directory with 33,000+ servers.
Features
- MCP server that provides computer control capabilities, like
Use Cases
Maintainer
Works with
Installation
Manual Installation
npx computer-control-mcpConfiguration
Configuration Details
claude_desktop_config.json
Performance
Response Metrics
Resource Usage
How to Set Up and Use Computer Control
Computer Control MCP is a Python-based MCP server that gives AI assistants direct control over a desktop computer's mouse, keyboard, and screen using PyAutoGUI for input simulation and RapidOCR with ONNXRuntime for optical character recognition — all bundled with zero external binary dependencies. It exposes tools for clicking, typing, dragging, pressing key combinations, taking screenshots, extracting text from the screen, listing windows, and activating specific application windows. AI assistants can use it to automate desktop workflows, interact with applications that have no API, and read on-screen content, making it functionally similar to Anthropic's computer-use capability.
Prerequisites
- Python 3.8 or higher installed
- uvx (from the uv package manager) or pip for installation
- Desktop environment access (Windows, macOS, or Linux with display server)
- An MCP-compatible client such as Claude Desktop
- On Linux: a display server (X11 or Wayland) and appropriate display permissions
Pre-download dependencies on first run
The first run downloads around 70MB of Python dependencies including ONNXRuntime models. Run this in a terminal first so the MCP client does not time out waiting.
uvx computer-control-mcp@latestConfigure your MCP client
Add the server to your MCP client configuration. The recommended approach uses uvx so no manual installation is needed.
Optional: install globally with pip
If you prefer a persistent installation rather than using uvx each time, install the package globally.
pip install computer-control-mcpOptional: customize screenshot directory
By default screenshots are saved to the OS downloads folder. Set the COMPUTER_CONTROL_MCP_SCREENSHOT_DIR environment variable to change this.
# macOS/Linux
export COMPUTER_CONTROL_MCP_SCREENSHOT_DIR="/home/yourname/Pictures/Screenshots"
# Windows PowerShell
$env:COMPUTER_CONTROL_MCP_SCREENSHOT_DIR = "C:\Users\YourName\Pictures\Screenshots"Optional: enable Windows Graphics Capture for GPU-accelerated windows
On Windows, traditional screenshots return black screens for GPU-accelerated apps like browsers, games, and Electron apps. Configure WGC patterns to automatically use the Windows Graphics Capture API for matched windows.
# In MCP client env config:
# COMPUTER_CONTROL_MCP_WGC_PATTERNS=obs, discord, chrome, gameComputer Control Examples
Client configuration
Claude Desktop configuration using uvx to run the latest version of computer-control-mcp with a custom screenshot directory.
{
"mcpServers": {
"computer-control-mcp": {
"command": "uvx",
"args": ["computer-control-mcp@latest"],
"env": {
"COMPUTER_CONTROL_MCP_SCREENSHOT_DIR": "/Users/yourname/Downloads/screenshots"
}
}
}
}Prompts to try
Example prompts using the mouse, keyboard, screenshot, and OCR tools exposed by the server.
- "Take a screenshot of my entire screen and describe what you see"
- "Click at coordinates (500, 300) on the screen"
- "Type 'Hello World' at the current cursor position"
- "Use OCR to read all text visible on the screen and list every window title you find"
- "Press Ctrl+C to copy the selected text, then tell me what was on the clipboard"Troubleshooting Computer Control
First run takes a very long time or times out in the MCP client
Run 'uvx computer-control-mcp@latest' once in a terminal before configuring the MCP client. This pre-downloads the ~70MB of dependencies. Subsequent launches are instant.
Screenshots of browser or Electron app windows are completely black
These are GPU-accelerated windows that standard GDI capture cannot handle. On Windows, set COMPUTER_CONTROL_MCP_WGC_PATTERNS to match the window title (e.g., 'chrome, discord'). The take_screenshot tool also accepts a 'use_wgc=true' flag per call.
Mouse clicks or keyboard events have no effect on Linux
PyAutoGUI requires a running X11 display. Set the DISPLAY environment variable (e.g., 'DISPLAY=:0') in the MCP client's env config. On Wayland, additional setup or an XWayland compatibility layer may be required.
Frequently Asked Questions about Computer Control
What is Computer Control?
Computer Control is a Model Context Protocol (MCP) server that mcp server that provides computer control capabilities, like mouse, keyboard, ocr, etc. using pyautogui, rapidocr, onnxruntime. similar to 'computer-use' by anthropic. with zero external dependencies. It connects AI assistants to external tools and data sources through a standardized interface.
How do I install Computer Control?
Follow the installation instructions on the Computer Control GitHub repository. Clone the repo, install dependencies, and add the server config to your AI client.
Which AI clients work with Computer Control?
Computer Control works with all major MCP-compatible AI clients including Claude Desktop, Claude Code, Cursor, VS Code (GitHub Copilot), Windsurf, and Cline.
Is Computer Control free to use?
Yes, Computer Control is open source and available under the MIT License license. You can use it freely in both personal and commercial projects.
Computer Control Alternatives — Similar Browser Automation Servers
Looking for alternatives to Computer Control? Here are other popular browser automation servers you can use with Claude, Cursor, and VS Code.
Chrome DevTools MCP
★ 40.6kAI-powered Chrome automation server with natural language element detection. Control Chrome browser through MCP protocol for testing, debugging, and performance analysis. Features 91% accuracy in element location, works with free AI models, and suppo
UI TARS Desktop
★ 34.9k📇 🏠 - Browser automation capabilities using Puppeteer, both support local and remote browser connection.
Playwright
★ 32.8kA production-ready browser automation server that enables AI assistants to interact with web pages using tools for navigation, element interaction, and data extraction. It features a built-in Inspector UI and robust crash recovery for reliable automa
Page Agent
★ 18.0kJavaScript in-page GUI agent. Control web interfaces with natural language.
Chrome
★ 11.7kAn extension-based MCP server that enables AI assistants to control your browser, leveraging existing sessions and login states for automation and content analysis. It provides over 20 tools for semantic tab search, interactive element manipulation,
LAMDA
★ 7.8kThe most powerful Android RPA agent framework, next generation mobile automation.
Browse More Browser Automation MCP Servers
Explore all browser automation servers available in the MCPgee directory. Each server includes setup guides for Claude, Cursor, and VS Code.
Set Up Computer Control in Your Editor
Choose your AI client for step-by-step setup instructions.
Quick Config Preview
Add this to your claude_desktop_config.json or .cursor/mcp.json
Ready to use Computer Control?
Browse our complete directory of 33,000+ MCP servers, read setup guides for your editor, and start building with the Model Context Protocol.