A powerful MCP server for local system automation and browser control
Project description
PyAutoControl MCP Server
A Model Context Protocol (MCP) server that provides autonomous GUI automation capabilities to LLM clients (like Claude Desktop). This tool allows an AI to interact directly with your computer's screen, mouse, and keyboard.
Features
- Screen Resolution: Retrieve primary monitor dimensions.
- Mouse Control: Perform clicks and precise cursor movements.
- Keyboard Automation: Type text and hotkeys into active windows.
- Screen Capture: Take and save screenshots for visual context.
Setup Instructions
1. Environment Requirements
- Python 3.12 or higher
- Windows (recommended for PyAutoGUI compatibility)
2. Installation
The project uses a virtual environment and pyproject.toml for dependency management.
# Create and activate virtual environment
python -m venv .venv
.\.venv\Scripts\activate
# Install dependencies
pip install mcp[cli] pyautogui opencv-python pillow
3. Claude Desktop Configuration
To use this with Claude Desktop, add the following to your claude_desktop_config.json:
{
"mcpServers": {
"PyAutoControl": {
"command": "d:/pyauto/.venv/Scripts/python.exe",
"args": ["D:/pyauto/main.py"]
}
}
}
Available Tools
get_screen_size: Returns the width and height of the primary monitor.mouse_click(x, y, button): Clicks the specified mouse button at the given coordinates.type_text(text, interval): Types a string of text with a configurable delay between keystrokes.take_screenshot(filename): Captures the current screen and saves it as a file.move_mouse(x, y, duration): Moves the cursor to a specific location over a set duration.
Security Warning
Giving an LLM control over your mouse and keyboard is powerful but risky. Only run this server with prompts you trust, and never leave the automation unattended while active.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file echo_mcp-0.1.0.tar.gz.
File metadata
- Download URL: echo_mcp-0.1.0.tar.gz
- Upload date:
- Size: 55.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
371896d0050a9b3364ae2fff07e109a2704876232e0a8afad7a080bf5efad058
|
|
| MD5 |
55fdb6bbd098c49092dd87c6b308c178
|
|
| BLAKE2b-256 |
ca32878148a200848cb0cb9592098dfe6b81ddf67758ae31798c4fcab60d8f69
|
File details
Details for the file echo_mcp-0.1.0-py3-none-any.whl.
File metadata
- Download URL: echo_mcp-0.1.0-py3-none-any.whl
- Upload date:
- Size: 6.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d437d830c4f8e47c32323da0208ed11033b461e6cd3793cfaecc4f52075fd0dc
|
|
| MD5 |
b698864c1764465bcff032b1b5fad01c
|
|
| BLAKE2b-256 |
9a452ce23d265843a70a17874b41205e85808b1c7647972aaac19cdd29a1c5ac
|