PyMCPAutoGUI🖱️⌨️🖼️ - 通过MCP实现GUI自动化

增强你的AI代理的能力! ✨ PyMCPAutoGUI在您的AI代理(如Cursor或其他MCP兼容环境中的代理)和计算机的图形用户界面(GUI)之间提供了一个桥梁。它允许您的代理看到屏幕👁️, 控制鼠标🖱️ 键盘⌨️,并与windows交互🪟, 就像人类用户一样!
停止繁琐的手动GUI任务,让你的AI来做繁重的工作💪. 非常适合自动化重复动作、测试GUI或构建强大的AI助手🤖.
🤔 为什么选择PyMCPAutoGUI?
- 🤖 授权您的代理人: 赋予您的AI代理直接与桌面应用程序交互的能力。
- ✅ 简单集成: 与MCP兼容的客户端(如Cursor编辑器)无缝协作。它是即插即用的!
- 🚀 易于使用: 使用简单的服务器命令开始。说真的 *那* 容易的。
- 🖱️⌨️ 综合控制: 提供经过实战测试的各种GUI自动化功能 PyAutoGUI 和 PyGetWindow.
- 🖼️ 屏幕感知: 包括用于截图和在屏幕上定位图像的工具——让您的代理 *看见*!
- 🪟 窗口管理: 控制窗口位置、大小、状态(最小化、最大化)等。把桌面收拾干净!
- 💬 用户交互: 显示警报、确认和提示框以与用户通信。
🛠️ 支持的环境
- 操作系统: Windows、macOS、Linux(需要适当的依赖关系
pyautogui在每个操作系统上) - python 3.11+ 🐍
- MCP客户端: 光标编辑器,任何支持 模型上下文协议(MCP)
🚀 入门-超级简单!
1.安装(推荐:使用虚拟环境!)
使用虚拟环境可以保持项目依赖关系的整洁。
# Create and activate a virtual environment (example using venv)
python -m venv .venv
# Windows PowerShell
.venv\Scripts\Activate.ps1
# macOS / Linux bash
source .venv/bin/activate
# Install using pip (from PyPI or local source)
# Make sure your virtual environment is active!
pip install pymcpautogui # Or pip install . if installing from local source*(注: pyautogui 可能存在系统依赖关系,例如 scrot 在Linux上截图。请检查 pyautogui 操作系统特定安装要求的文档。)*
2.运行MCP服务器
安装后,只需从终端运行服务器:
# Make sure your virtual environment is activated!
python -m pymcpautogui.server服务器将启动并监听连接(默认为端口6789)。查看此输出:
INFO: Started server process [XXXXX]
INFO: Waiting for application startup.
INFO: Application startup complete.
INFO: Uvicorn running on http://127.0.0.1:6789 (Press CTRL+C to quit)当您需要GUI自动化魔法时,请保持此终端运行! ✨
✨ 与光标编辑器无缝集成
将PyMCPAutoGUI连接到Cursor(@symbol),以便直接在编码工作流中实现GUI自动化。
- 打开MCP配置: 在光标中,使用命令选项板(
Ctrl+Shift+P或Cmd+Shift+P)并找到“MCP:打开MCP.json配置文件”。
- 添加PyMCPAutoGUI配置: 将此配置添加或合并到您的
mcp.json。如果需要,请调整路径(特别是当Cursor不是从项目根运行时)。
{
"mcpServers": {
// ... other MCP server configs if any ...
"PyMCPAutoGUI": {
// Sets the working directory. ${workspaceFolder} is usually correct.
"cwd": "${workspaceFolder}",
// Command to run Python. 'python' works if the venv is active in the terminal
// where Cursor was launched, or specify the full path.
"command": "python", // Or ".venv/Scripts/python.exe" (Win) or ".venv/bin/python" (Mac/Linux)
// Arguments to start the server module.
"args": ["-m", "pymcpautogui.server"]
}
// ... other MCP server configs if any ...
}
}*(提示:如果 mcp.json 已存在,只需添加 "PyMCPAutoGUI": { ... } 内部部分 mcpServers 对象。)*
- 保存
mcp.json。游标将检测服务器。
- 自动化! 使用
@PyMCPAutoGUI在游标聊天中:
*例子:* @PyMCPAutoGUI move_to(x=100, y=200) @PyMCPAutoGUI write(text='Automating with AI! 🎉', interval=0.1) @PyMCPAutoGUI screenshot(filename='current_screen.png') @PyMCPAutoGUI activate_window(title='Notepad')
🧰 可用工具
PyMCPAutoGUI公开了来自 pyautogui 和 pygetwindow示例包括:
- 鼠标🖱️:
move_to,click,move_rel,drag_to,drag_rel,scroll,mouse_down,mouse_up,get_position - 键盘⌨️:
write,press,key_down,key_up,hotkey - 截图🖼️:
screenshot,locate_on_screen,locate_center_on_screen - 视窗🪟:
get_all_titles,get_windows_with_title,get_active_window,activate_window,minimize_window,maximize_window,restore_window,move_window,resize_window,close_window - 对话框💬:
alert,confirm,prompt,password - 配置⚙️:
set_pause,set_failsafe
有关完整列表和详细信息,请查看 pymcpautogui/server.py 文件或使用 @PyMCPAutoGUI list_tools 在您的MCP客户端中。
📄 许可证
此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。自动化快乐! 😄
