PyAutoGUI Server
An MCP server for PyAutoGUI that enables automated GUI testing and control, including mouse and keyboard actions, screenshots, and screen information.
mcp-pyautogui-server
A MCP (Model Context Protocol) server that provides automated GUI testing and control capabilities through PyAutoGUI.
Features
- Control mouse movements and clicks
- Simulate keyboard input
- Take screenshots
- Find images on screen
- Get screen information
- Cross-platform support (Windows, macOS, Linux)
Tools
The server implements the following tools:
Mouse Control
- Move mouse to specific coordinates
- Click at current or specified position
- Drag and drop operations
- Get current mouse position
Keyboard Control
- Type text
- Press individual keys
- Hotkey combinations
Screen Operations
- Take screenshots
- Get screen size
- Find image locations on screen
- Get pixel colors
Installation
Prerequisites
- Python 3.12+
- PyAutoGUI
- Other dependencies will be installed automatically
Install Steps
Install the package:
pip install mcp-pyautogui-server
Claude Desktop Configuration
On MacOS:
~/Library/Application\ Support/Claude/claude_desktop_config.json
On Windows:
%APPDATA%/Claude/claude_desktop_config.json
Development/Unpublished Servers Configuration:
{
"mcpServers": {
"mcp-pyautogui-server": {
"command": "uv",
"args": [
"--directory",
"/path/to/mcp-pyautogui-server",
"run",
"mcp-pyautogui-server"
]
}
}
}
Published Servers Configuration:
{
"mcpServers": {
"mcp-pyautogui-server": {
"command": "uvx",
"args": [
"mcp-pyautogui-server"
]
}
}
}
Development
Building and Publishing
- Sync dependencies and update lockfile:
uv sync
- Build package distributions:
uv build
- Publish to PyPI:
uv publish
Note: Set PyPI credentials via environment variables or command flags:
- Token:
--tokenorUV_PUBLISH_TOKEN - Username/password:
--username/UV_PUBLISH_USERNAMEand--password/UV_PUBLISH_PASSWORD
Debugging
For the best debugging experience, use the MCP Inspector.
Launch the MCP Inspector via npm:
npx @modelcontextprotocol/inspector uv --directory /path/to/mcp-pyautogui-server run mcp-pyautogui-server
The Inspector will display a URL that you can access in your browser to begin debugging.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Related Servers
XcodeBuildMCP
Popular MCP server that enables AI agents to scaffold, build, run and test iOS, macOS, visionOS and watchOS apps or simulators and wired and wireless devices. It has powerful UI-automation capabilities like controlling the simulator, capturing run-time logs, as well as taking screenshots and viewing the accessibility hierarchy.
Bitrix24 MCP-DEV
The MCP server for Bitrix24 provides AI assistants with structured access to the Bitrix24 API. It delivers up-to-date method descriptions, parameters, and valid values, allowing assistants to work with precise data instead of guesswork. This reduces code errors and accelerates Bitrix24 integration development.
QuantConnect
A server for local interactions with the QuantConnect API.
Alchemy MCP Server
Interact with Alchemy's blockchain APIs to query data without writing code.
Raspberry Pi MCP Servers Collection
A collection of production-ready MCP servers optimized for Raspberry Pi and AI workloads.
Aptos NPM MCP
A MCP server for interacting with Aptos NPM packages.
Buildkite
Manage Buildkite pipelines and builds.
ADT MCP Server
An MCP server for ABAP Development Tools (ADT) that exposes various ABAP repository-read tools over a standardized interface.
mcp4gql
An MCP server that acts as a bridge, allowing MCP clients to interact with a target GraphQL API.
Bruno MCP Server
Execute Bruno collections using the Bruno CLI, with support for environment files and detailed test results.