MCPControl
MCPControl 是一个用于 Model Context Protocol 的 Windows 控制服务器,提供对系统操作的程序化控制,包括鼠标、键盘、窗口管理和屏幕捕获功能。
几个月前,我开发了这个项目作为实验,想看看 Claude 是否能玩一些视频游戏。看到它工作后,我印象深刻,但将其搁置了。最近,它引起了社区的关注,促使我重新开始开发。虽然目前处于预发布状态,但我正在积极努力使其达到稳定版本。如果您遇到任何问题或想帮助测试,请通过 issue 跟踪器提交。
注意: 目前该项目仅支持 Windows。
⚠️ 重要免责声明
本软件是实验性的,可能具有潜在危险
使用本软件即表示您承认并接受以下内容:
- 通过此工具让 AI 模型直接控制您的计算机本质上是有风险的
- 本软件可以控制您的鼠标、键盘和其他系统功能,可能会导致意外后果
- 您完全自行承担使用本软件的风险
- 本项目的创建者和贡献者不对因使用本软件而导致的任何损害、数据丢失或其他后果承担任何责任
- 该工具应仅在受控环境中使用,并采取适当的安全措施
使用风险自负
功能
- 窗口管理
- 列出所有窗口
- 获取活动窗口信息
- 获取窗口标题
- 获取窗口大小和位置
- 聚焦窗口
- 调整窗口大小
- 重新定位窗口
- 鼠标控制
- 鼠标移动
- 点击操作
- 滚动功能
- 拖拽操作
- 光标位置跟踪
- 键盘控制
- 文本输入
- 组合键
- 按键按下/释放操作
- 按键保持功能
- 屏幕操作
- 屏幕捕获
- 获取屏幕尺寸
- 活动窗口检测
- 剪贴板集成
- 获取剪贴板内容
- 设置剪贴板内容
- 清空剪贴板
- 检查剪贴板状态
使用
只需按照 MCP 服务器配置 部分的说明配置您的 Claude MCP 设置以使用 MCPControl。无需安装!
从源码构建
如果您有兴趣贡献或从源码构建,请参阅 CONTRIBUTING.md 获取详细说明。
开发要求
要为开发构建此项目,您需要:
- Windows 操作系统(keysender 依赖项必需)
- Node.js 18 或更高版本(使用包含构建工具的官方 Windows 安装程序安装)
- npm 包管理器
- 原生构建工具:
- node-gyp:
npm install -g node-gyp
- cmake-js:
npm install -g cmake-js
keysender 依赖项依赖于 Windows 特定的原生模块,这些模块需要这些构建工具。
MCP 服务器配置
要使用此项目,您需要以下构建工具:
- 使用官方 Windows 安装程序安装 Node.js,其中包含必要的构建工具
- 安装其他所需工具:
然后,将以下配置添加到您的 MCP 设置中:
配置 MCP 设置后,重新启动客户端以在菜单中看到 MCPControl 服务。
项目结构
/src
/handlers
- 请求处理程序和工具管理/tools
- 核心功能实现/types
- TypeScript 类型定义index.ts
- 主应用程序入口点
依赖项
- @modelcontextprotocol/sdk - 用于协议实现的 MCP SDK
- keysender - 仅限 Windows 的 UI 自动化库
- clipboardy - 剪贴板处理
- sharp - 图像处理
- uuid - UUID 生成
测试
该项目目前包括核心功能的单元测试。以下测试领域计划在未来开发:
- 跨模块功能的集成测试
- 性能测试
- 错误处理验证
已知限制
- 目前不支持窗口最小化/还原操作
- 多屏幕功能可能无法按预期工作,具体取决于设置
- get_screenshot 实用程序无法与 VS Code Extension Cline 一起使用。请参阅 GitHub issue #1865
- 某些操作可能需要提升权限,具体取决于目标应用程序
- 仅支持 Windows
- 点击精度目前在 1280x720 分辨率、单屏幕下效果最佳。我们正在处理一个偏移/缩放错误,并寻找测试人员或帮助创建测试工具
贡献
请参阅 CONTRIBUTING.md
许可证
本项目采用 MIT 许可证 - 请参阅 LICENSE 文件了解更多详情。
参考
- Author:waytomcp
- URL:https://www.waytomcp.com/article/Cheffromspace/MCPControl
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!