返回市场
MCP桌面自动化

MCP桌面自动化

作者:tanob19 星标更新:2025-11-11

项目介绍

MCP 桌面自动化

这是一个使用RobotJS提供桌面自动化功能并具有截图能力的Model Context Protocol服务器。此服务器使LLMs能够控制鼠标移动、键盘输入,并捕获桌面环境的截图。

配置以使用桌面自动化服务器

以下是配置Claude Desktop以使用MCP桌面自动化服务器的方法:

NPX

{
  "mcpServers": {
    "desktop-automation": {
      "command": "npx",
      "args": ["-y", "mcp-desktop-automation"]
    }
  }
}

权限

此服务器需要系统级权限来:

  • 捕获屏幕截图
  • 控制鼠标移动和点击
  • 模拟键盘输入

首次运行Claude Desktop时,您可能需要在操作系统安全设置中授予这些权限。

限制

虽然此服务器与各种MCP客户端兼容,但主要是在Claude Desktop上进行测试。

重要:当前实现有一个1MB响应大小限制。对于屏幕截图,这意味着:

  • 高分辨率截图可能会超过此限制而失败
  • 测试表明800x600分辨率可以可靠工作
  • 如果遇到问题,请考虑降低屏幕分辨率或仅捕获特定屏幕区域

要求

  • Node.js (>=14.x)

组件

工具

  • get_screen_size

    • 获取屏幕尺寸
    • 不需要输入参数
  • screen_capture

    • 捕获当前屏幕内容
    • 不需要输入参数
  • keyboard_press

    • 按下键盘键或键组合
    • 输入:
      • key (字符串,必需):要按下的键(例如,'enter', 'a', 'control')
      • modifiers (字符串数组,可选):按下键时要按住的修饰键。可能值:"control", "shift", "alt", "command"
  • keyboard_type

    • 在当前位置输入文本
    • 输入:text (字符串,必需):要输入的文本
  • mouse_click

    • 执行鼠标点击
    • 输入:
      • button (字符串,可选,默认:"left"):要点击的鼠标按钮。可能值:"left", "right", "middle"
      • double (布尔值,可选,默认:false):是否执行双击
  • mouse_move

    • 将鼠标移动到指定坐标
    • 输入:
      • x (数字,必需):X坐标
      • y (数字,必需):Y坐标

资源

服务器提供了对截图的访问:

  1. 截图列表 (screenshot://list)

    • 列出所有可用截图的名称
  2. 截图内容 (screenshot://{id})

    • 捕获的截图的PNG图像
    • 通过截图ID(基于时间戳命名)访问

主要特性

  • 桌面鼠标控制
  • 键盘输入模拟
  • 屏幕尺寸检测
  • 截图能力
  • 简单的JSON响应格式

许可证

此MCP服务器根据MIT许可证发布。这意味着您可以自由地使用、修改和分发该软件,但需遵守MIT许可证中的条款和条件。更多详情,请参见项目存储库中的LICENSE文件。 </中文翻译>