Windows控制服务器 模型上下文协议,提供对系统操作的编程控制,包括鼠标、键盘、窗口管理和屏幕捕获功能。
备注:此项目目前仅支持Windows。
🔥 为什么选择MCPControl?
MCPControl弥合了AI模型和桌面之间的差距,实现了对以下内容的安全、程序化控制:
- 🖱️ 鼠标移动和点击
- ⌨️ 键盘输入和快捷键
- 🪟 窗口管理
- 📸 屏幕截图和分析
- 📋 剪贴板操作
🔌 快速开始
先决条件
-
安装构建工具(包括VC++工作负载)
POWERSHELL2# Run as Administrator - may take a few minutes to complete winget install Microsoft.VisualStudio.2022.BuildTools --override "--wait --passive --add Microsoft.VisualStudio.Workload.VCTools --includeRecommended" -
安装Python (如果尚未安装)
POWERSHELL2# Install Python (required for node-gyp) winget install Python.Python.3.12 -
安装Node.js
POWERSHELL2# Install latest LTS version winget install OpenJS.NodeJS
安装
-
安装MCPControl软件包
POWERSHELL1npm install -g mcp-control
配置
MCPControl在 1280x720分辨率的虚拟机 以获得最佳的点击精度。
配置您的Claude客户端以通过SSE传输连接到MCPControl:
选项1:直接SSE连接
要连接到VM或远程计算机上运行的MCPControl服务器:
JSON
{
"mcpServers": {
"MCPControl": {
"transport": "sse",
"url": "http://192.168.1.100:3232/mcp"
}
}
}
替换 192.168.1.100:3232 使用服务器的IP地址和端口。
选项2:与苏格兰和南方能源公司在当地启动
要使用SSE传输在本地启动MCPControl:
JSON
{
"mcpServers": {
"MCPControl": {
"command": "mcp-control",
"args": ["--sse"]
}
}
}
启动服务器
首先,在VM或本地计算机上启动MCPControl服务器:
BASH
1mcp-control --sse
服务器将显示:
- 可用网络接口及其IP地址
- 端口号(默认值:3232)
- 连接状态消息
VM设置示例
-
启动Windows虚拟机 分辨率为1280x720
-
安装MCPControl 在VM上:
BASHnpm install -g mcp-control -
运行服务器 使用SSE运输:
BASHmcp-control --sse -
记下VM的IP地址 (例如。, 192.168.1.100)
-
配置Claude 使用SSE URL:
JSO{ "mcpServers": { "MCPControl": { "transport": "sse", "url": "http://192.168.1.100:3232/mcp" } } } -
重新启动克劳德 MCPControl将出现在您的MCP菜单中!
🔧 CLI选项
MCPControl支持多种用于高级配置的命令行标志:
BASH
# Run with SSE transport on default port (3232)
mcp-control --sse
# Run with SSE on custom port
mcp-control --sse --port 3000
# Run with HTTPS/TLS (required for production deployments)
mcp-control --sse --https --cert /path/to/cert.pem --key /path/to/key.pem
# Run with HTTPS on custom port
mcp-control --sse --https --port 8443 --cert /path/to/cert.pem --key /path/to/key.pem
命令行参数
- --sse -为网络访问启用SSE(服务器发送事件)传输
- --port [number] -指定自定义端口(默认值:3232)
- --https -启用HTTPS/TLS(根据MCP规范,远程部署需要)
- --cert [path] -TLS证书文件的路径(需要–https)
- --key [path] -TLS私钥文件的路径(需要–https)
安全说明
根据MCP规范,HTTPS是 强制性的 适用于生产环境中所有基于HTTP的传输。部署MCPControl进行远程访问时,请始终使用 --https 带有有效TLS证书的标志。
🚀 常用用例
辅助自动化
- 应用程序测试:将重复的UI测试委托给Claude,允许AI在应用程序中导航并报告问题
- 工作流程自动化:让克劳德代表你操作应用程序,在你专注于创造性工作的同时处理重复性任务
- 表格填写:让Claude在您的监督下处理数据输入任务
人工智能实验
- AI游戏:观看克劳德通过视觉反馈学习玩简单游戏
- 视觉推理:测试克劳德浏览视觉界面和解决视觉谜题的能力
- 人工智能协作:探索新的交互范式,让Claude可以看到你的屏幕并帮助完成复杂的任务
开发和测试
- 跨应用集成:通常不通信的网桥应用程序
- UI测试框架:通过可视化验证创建稳健的测试场景
- 演示创建:自动创建产品演示
⚠️ 重要免责声明
这个软件是实验性的,有潜在的危险
使用本软件即表示您承认并接受:
- 通过此工具让AI模型直接控制您的计算机本身就存在风险
- 该软件可以控制您的鼠标、键盘和其他系统功能,这些功能可能会导致意想不到的后果
- 您使用此软件的风险完全由您自行承担
- 本项目的创建者和贡献者对使用本软件可能造成的任何损坏、数据丢失或其他后果不承担任何责任
- 该工具只能在有适当安全措施的受控环境中使用
使用风险自负
🌟 特性
| ### 🪟 Window Management- List all windows - Get active window info - Focus, resize & reposition |
### 🖱️ Mouse Control- Precision movement - Click & drag operations - Scrolling & position tracking |
|---|---|
| ### ⌨️ Keyboard Control- Text input & key combos - Key press/release control - Hold key functionality |
### 📸 Screen Operations- High-quality screenshots - Screen size detection - Active window capture |
🔧 自动化供应商
MCPControl为不同用例支持多个自动化提供商:
- 密钥提交器 (默认)-具有高可靠性的本机Windows自动化
- PowerShell -基于Windows PowerShell的自动化,操作更简单
- 自动热键 -AutoHotkey v2脚本,满足高级自动化需求
提供程序配置
您可以使用环境变量配置自动化提供程序:
BASH
# Use a specific provider for all operations
export AUTOMATION_PROVIDER=autohotkey
# Configure AutoHotkey executable path (if not in PATH)
export AUTOHOTKEY_PATH="C:\Program Files\AutoHotkey\v2\AutoHotkey.exe"
或者使用模块化配置进行特定操作:
BASH
# Mix and match providers for different operations
export AUTOMATION_KEYBOARD_PROVIDER=autohotkey
export AUTOMATION_MOUSE_PROVIDER=keysender
export AUTOMATION_SCREEN_PROVIDER=keysender
export AUTOMATION_CLIPBOARD_PROVIDER=powershell
请参阅特定于提供商的文档:
- 自动热键提供程序
🛠️ 开发设置
如果您有兴趣从源代码进行贡献或构建,请参阅 贡献.md 详细说明。
开发要求
要构建此项目进行开发,您需要:
-
Windows操作系统(密钥提交依赖关系所需)
-
Node.js 18或更高版本(使用包含构建工具的官方Windows安装程序安装)
-
npm包管理器
-
本机构建工具:
- 节点gyp: npm install -g node-gyp
- cmake js: npm install -g cmake-js
keysender依赖关系依赖于需要这些构建工具的特定于Windows的本机模块。
📋 项目结构
-
/src
- /handlers -请求处理程序和工具管理
- /tools -核心功能实现
- /types -TypeScript类型定义
- index.ts -主要应用入口点
🔖 存储库分支
- main -具有最新功能和更改的主要开发分支
- release -反映最新稳定标签(当前v0.2.0)的稳定发布分支
版本安装
您可以使用npm安装特定版本的MCPControl:
BASH
# Install the latest stable release (from release branch)
npm install mcp-control
# Install a specific version
npm install mcp-control@0.1.22
📚 依赖项
- @模型上下文协议/sdk -用于协议实现的MCP SDK
- 密钥提交器 -仅限Windows的UI自动化库
- 剪贴板 -剪贴板处理
- 锋利 -图像处理
- 通用唯一标识符 -UUID生成
🚧 已知限制
- 当前不支持窗口最小化/还原操作
- 根据设置,多个屏幕功能可能无法按预期工作
- get_creenshot实用程序不适用于VS代码扩展Cline。看 GitHub第1865期
- 根据目标应用程序的不同,某些操作可能需要提升权限
- 仅支持Windows
- MCPControl在1280x720分辨率的单屏幕上效果最佳。点击精度针对此分辨率进行了优化。我们正在解决偏移/缩放错误,并寻找测试人员或帮助创建测试工具
派为资料库
评论前必须登录!
立即登录 注册