
MCP Server for Windows UI Automation (基于 yinkaisheng/Python-UIAutomation-for-Windows)
概览
基于 Python-UIAutomation-for-Windows 的 MCP (Model Context Protocol) 服务器 yinkaiisheng 开发的优秀 UI 自动化库,本项目是其 MCP 封装实现。 UIAutomation MCP Server 让 AI 助手(如 Claude、ChatGPT)能够通过 MCP 协议直接操作 Windows UI 控件,实现: - 自动化桌面应用程序操作 - 控件信息查询与截图 - 键盘鼠标模拟 - 窗口管理 支持的应用类型:Win32、MFC、WPF、Windows Forms、Modern UI (UWP)、Qt、Firefox、Chrome、Electron 等。 overlay-arrows-and-more 只有 ui_highlight 高亮工具需要;未安装时该工具会返回 DEPENDENCY_MISSING,其余工具不受影响。 在 Claude Desktop / Claude Code / Cursor / Kiro 等 MCP 客户端的配置文件中添加: - ui_close_window - 关闭窗口 - ui_terminate_process - 终止进程
概述(AI 翻译)
基于 Python-UIAutomation-for-Windows 的 MCP (Model Context Protocol) 服务器
特别感谢 yinkaiisheng 开发的优秀 UI 自动化库,本项目是其 MCP 封装实现。
简介
UIAutomation MCP Server 让 AI 助手(如 Claude、ChatGPT)能够通过 MCP 协议直接操作 Windows UI 控件,实现:
- 自动化桌面应用程序操作
- 控件信息查询与截图
- 键盘鼠标模拟
- 窗口管理
支持的应用类型:Win32、MFC、WPF、Windows Forms、Modern UI (UWP)、Qt、Firefox、Chrome、Electron 等。
安装
overlay-arrows-and-more只有ui_highlight高亮工具需要;未安装时该工具会返回DEPENDENCY_MISSING,其余工具不受影响。
配置
在 Claude Desktop / Claude Code / Cursor / Kiro 等 MCP 客户端的配置文件中添加:
也可以不安装、直接用源码运行:
可用工具
控件查找 (6)
| 工具 | 描述 |
|---|---|
ui_find_window |
查找顶层窗口 |
ui_find_control |
查找子控件 |
ui_get_children |
获取子控件列表 |
ui_get_focused |
获取当前焦点控件 |
ui_get_foreground |
获取前台窗口 |
ui_control_from_point |
获取屏幕坐标处的控件 |
交互操作 (5)
| 工具 | 描述 |
|---|---|
ui_click |
点击控件 (支持左键/右键/双击) |
ui_send_keys |
发送键盘输入 |
ui_set_value |
设置文本值 |
ui_close_window |
关闭窗口 (需确认) |
ui_move_window |
移动/调整窗口 |
信息查询 (6)
| 工具 | 描述 |
|---|---|
ui_get_properties |
获取控件属性 |
ui_get_text |
获取文本内容 |
ui_get_rect |
获取边界矩形 |
ui_screenshot |
控件/窗口截图 |
ui_exists |
检查控件是否存在 |
本页由 AI 翻译,技术细节请以原文为准。
README
以下为原文 README 节选,完整内容请查看原文。
UIAutomation MCP Server
基于 Python-UIAutomation-for-Windows 的 MCP (Model Context Protocol) 服务器
特别感谢 yinkaisheng 开发的优秀 UI 自动化库,本项目是其 MCP 封装实现。
简介
UIAutomation MCP Server 让 AI 助手(如 Claude、ChatGPT)能够通过 MCP 协议直接操作 Windows UI 控件,实现:
- 自动化桌面应用程序操作
- 控件信息查询与截图
- 键盘鼠标模拟
- 窗口管理
支持的应用类型:Win32、MFC、WPF、Windows Forms、Modern UI (UWP)、Qt、Firefox、Chrome、Electron 等。
安装
pip install -e . # 或 uv sync
pip install comtypes overlay-arrows-and-more
overlay-arrows-and-more只有ui_highlight高亮工具需要;未安装时该工具会返回DEPENDENCY_MISSING,其余工具不受影响。
配置
在 Claude Desktop / Claude Code / Cursor / Kiro 等 MCP 客户端的配置文件中添加:
{
"mcpServers": {
"uiautomation": {
"command": "uiautomation-mcp",
"type": "stdio"
}
}
}
也可以不安装、直接用源码运行:
{
"mcpServers": {
"uiautomation": {
"command": "uv",
"args": [
"--directory",
"D:\\path\\to\\Python-UIAutomation-for-Windows",
"run",
"main.py"
],
"type": "stdio"
}
}
}
可用工具
控件查找 (6)
| 工具 | 描述 |
|---|---|
ui_find_window |
查找顶层窗口 |
ui_find_control |
查找子控件 |
ui_get_children |
获取子控件列表 |
ui_get_focused |
获取当前焦点控件 |
ui_get_foreground |
获取前台窗口 |
ui_control_from_point |
获取屏幕坐标处的控件 |
交互操作 (5)
| 工具 | 描述 |
|---|---|
ui_click |
点击控件 (支持左键/右键/双击) |
ui_send_keys |
发送键盘输入 |
ui_set_value |
设置文本值 |
ui_close_window |
关闭窗口 (需确认) |
ui_move_window |
移动/调整窗口 |
信息查询 (6)
| 工具 | 描述 |
|---|---|
ui_get_properties |
获取控件属性 |
ui_get_text |
获取文本内容 |
ui_get_rect |
获取边界矩形 |
ui_screenshot |
控件/窗口截图 |
ui_exists |
检查控件是否存在 |
ui_wait_for |
等待条件满足 |
Pattern 操作 (6)
| 工具 | 描述 |
|---|---|
ui_invoke |
调用按钮 (InvokePattern) |
ui_toggle |
切换状态 (TogglePattern) |
ui_expand_collapse |
展开/折叠 (ExpandCollapsePattern) |
ui_select_item |
选择项 (SelectionItemPattern) |
ui_scroll |
滚动控件 (ScrollPattern) |
ui_terminate_process |
终止进程 (需确认) |
辅助工具 (5)
| 工具 | 描述 |
|---|---|
ui_clipboard_get |
获取剪贴板内容 |
ui_clipboard_set |
设置剪贴板内容 |
ui_list_processes |
列出运行中的进程 |
ui_show_desktop |
显示/最小化所有窗口 |
ui_get_screen_size |
获取屏幕尺寸 |
高亮与拾取 (3)
| 工具 | 描述 |
|---|---|
ui_highlight |
在控件周围绘制高亮边框 (需 overlay-arrows-and-more) |
ui_interactive_pick |
启动交互式拾取器 (鼠标指向控件 → 点「完成」) |
ui_pick_result |
读取拾取结果 (searchDepth / codeSuggestion) |
环境变量
| 变量 | 默认值 | 描述 |
|---|
安装
This server does not publish a one-line install command.
Open the repository installation guide 新手?先看 mcpskill.org 教程 →配置
{
"mcpServers": {
"uiautomation": {
"command": "uiautomation-mcp",
"type": "stdio"
}
}
}