首页/浏览器自动化/mcp-desktop-automation

mcp-desktop-automation

查看源码
2025-5-12
Words 772Read Time 2 min
Score:85

提供桌面自动化功能的MCP服务器,支持鼠标控制、键盘输入和屏幕截图。

JavaScript

MCP 桌面自动化

MCP(Model Context Protocol)服务器,提供基于 RobotJS 的桌面自动化功能和屏幕截图能力。该服务器使 LLMs(大型语言模型)能够控制鼠标移动、键盘输入,并捕获桌面环境的屏幕截图。

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

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

NPX 配置

权限要求

该服务器需要系统级权限以执行以下操作:
  • 捕获屏幕截图
  • 控制鼠标移动和点击
  • 模拟键盘输入
首次运行 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)
      • 按名称列出所有可用截图
  1. 截图内容 (screenshot://{id})
      • 捕获的截图 PNG 图像
      • 通过基于时间戳命名的截图 ID 访问

主要功能

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

许可证

本 MCP 服务器采用 MIT 许可证。这意味着您可以自由使用、修改和分发该软件,但需遵守 MIT 许可证的条款和条件。更多详情,请参阅项目仓库中的 LICENSE 文件。
上一篇
cursor-notebook-mcp
下一篇
xiyan_mcp_server