mcp-remote-macos-use

by baryhuang
Verified

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Enables remote control of macOS systems through screen sharing, allowing AI agents to capture screenshots, send keyboard inputs, control mouse movements, and interact with any macOS application without requiring additional software installation.

  • Provides a direct alternative to OpenAI Operator, allowing OpenAI models to interact with and control macOS systems through the MCP protocol.

  • Supports interaction with YouTube, as demonstrated in showcases where the system is used to create short highlight videos using applications like CapCut.

MCP 服务器 - 远程 MacOs 使用

第一个使 AI 能够完全控制远程 macOS 系统的开源 MCP 服务器。

OpenAI Operator 的直接替代品,专门针对具有完整桌面功能的自主 AI 代理进行了优化,无需安装额外的软件。

展示柜

  • 研究 Twitter 并发布 Twitter( https://www.youtube.com/watch?v=--QHz2jcvcs
  • 使用 CapCut 制作精彩短视频( https://www.youtube.com/watch?v=RKAqiNoU8ec
  • AI Recruiter:自动收集候选人信息、审核申请并通过邮件应用程序发送筛选信息
  • AI 营销实习生:LinkedIn 互动 - 自动关注、点赞和评论相关用户
  • 人工智能营销实习生:Twitter 互动 - 自动关注、点赞和评论相关用户

待办事项清单(按优先级排序)

  1. 性能优化- 匹配 Ubuntu 桌面替代品的速度
  2. Apple 脚本生成- 减少执行时间,同时保持灵活性
  3. VNC 光标可见性- 改善调试和演示体验

欢迎投稿!

特征

  • 无需额外 API 费用:使用您现有的 Claude Pro 计划即可免费进行屏幕处理
  • 最小设置:只需在目标 Mac 上启用屏幕共享 - 无需其他软件
  • 通用兼容性:适用于所有 macOS 版本(当前和未来版本)

我们为何建造这个

原生 macOS 体验,毫不妥协

macOS 原生生态系统在用户体验方面依然无与伦比,并将在未来数年继续成为行业标杆。这正是人类能力真正蓬勃发展的地方,现在您的 AI 也能在此环境中流畅运行。

开放式架构设计

  • 通用 LLM 兼容性:与您选择的任何 MCP 客户端兼容
  • 模型灵活性:与 OpenAI、Anthropic 或任何其他 LLM 提供商无缝集成
  • 面向未来的集成:旨在与 MCP 生态系统共同发展

轻松部署

  • 目标机器上的零设置:macOS 上无需后台应用程序或代理
  • 您只需要屏幕共享:控制任何启用屏幕共享的 Mac
  • 消除后端复杂性:与其他需要运行 Python 应用程序或后台服务的解决方案不同

简化的引导过程

  • 利用 Claude Desktop 的精美 UI :无需开发人员风格的 Python 界面
  • 直观的用户体验:通过熟悉、用户友好的界面与 AI 控制的 Mac 进行交互
  • 即时生产力:立即开始工作,无需配置麻烦

建筑学

安装

{ "mcpServers": { "remote-macos-use": { "command": "docker", "args": [ "run", "-i", "-e", "MACOS_USERNAME=your_macos_username", "-e", "MACOS_PASSWORD=your_macos_password", "-e", "MACOS_HOST=your_macos_hostname_or_ip", "-e", "LIVEKIT_API_KEY=your_livekit_api_key", "-e", "LIVEKIT_API_SECRET=your_livekit_api_secret", "-e", "LIVEKIT_HOST=your_livekit_host", "--rm", "buryhuang/mcp-remote-macos-use:latest" ] } } }

通过 LiveKit 支持 WebRTC

该服务器现在通过 LiveKit 集成提供 WebRTC 支持,从而实现:

  • 低延迟实时屏幕共享
  • 提高性能和响应能力
  • 与传统 VNC 相比,网络效率更高
  • 根据网络状况自动调整质量

要使用 WebRTC 功能,您需要:

  1. 设置 LiveKit 服务器或使用 LiveKit Cloud
  2. 按照上面的配置示例所示配置LiveKit环境变量

开发者指南

克隆 repo

# Clone the repository git clone https://github.com/yourusername/mcp-remote-macos-use.git cd mcp-remote-macos-use

构建Docker镜像

# Build the Docker image docker build -t mcp-remote-macos-use .

跨平台发布

要为多个平台发布 Docker 镜像,可以使用docker buildx命令。请按以下步骤操作:

  1. 创建一个新的构建器实例(如果还没有):
    docker buildx create --use
  2. 为多个平台构建并推送图像
    docker buildx build --platform linux/amd64,linux/arm64 -t buryhuang/mcp-remote-macos-use:latest --push .
  3. 验证该图像是否适用于指定的平台
    docker buildx imagetools inspect buryhuang/mcp-remote-macos-use:latest

用法

该服务器通过 MCP 工具提供远程 MacOs 功能。

工具规格

该服务器提供以下用于远程 macOS 控制的工具:

remote_macos_get_screen

连接到远程 macOS 机器并获取远程桌面的屏幕截图。

remote_macos_send_keys

将键盘输入发送到远程 macOS 机器。

remote_macos_mouse_move

将鼠标光标移动到远程 macOS 机器上的指定坐标,并自动进行坐标缩放。

remote_macos_mouse_click

在远程 macOS 机器上的指定坐标处执行鼠标单击,并自动进行坐标缩放。

remote_macos_mouse_double_click

在远程 macOS 机器上的指定坐标处执行鼠标双击,并自动进行坐标缩放。

remote_macos_mouse_scroll

在远程 macOS 机器上的指定坐标处执行鼠标滚动,并自动进行坐标缩放。

remote_macos_open_application

打开/激活应用程序并返回其 PID 以进行进一步交互。

remote_macos_mouse_drag_n_drop

在远程 macOS 机器上执行鼠标从起点拖动到终点的操作,并自动进行坐标缩放。

所有工具都使用安装期间配置的环境变量,而不需要连接参数。

限制

  • 身份验证支持
    • 仅支持 Apple 身份验证(协议 30)

安全说明

https://support.apple.com/guide/remote-desktop/encrypt-network-data-apdfe8e386b/mac https://cafbit.com/post/apple\_remote\_desktop\_quirks/

我们仅支持协议 30,该协议使用带有 512 位素数的 Diffie-Hellman 密钥协商协议。macOS 11 至 macOS 12 与 OS X 10.11 或更早版本的客户端通信时使用此协议。

以下是转换为 markdown 表的信息:

运行远程桌面的 macOS 版本macOS 客户端版本验证控制和观察复制项目或安装包所有其他任务协议版本
macOS 13macOS 132048 位 RSA 主机密钥2048 位 RSA 主机密钥使用 2048 位 RSA 主机密钥进行身份验证,然后使用 128 位 AES2048 位 RSA 主机密钥三十六
macOS 13macOS 10.12安全远程密码 (SRP) 协议仅适用于本地。如果绑定到 LDAP 或 macOS 服务器,则 Diffie-Hellman (DH) 版本为 10.11 或更早版本SRP 或 DH,128 位 AES使用 SRP 或 DH 进行身份验证,然后进行 128 位 AES2048 位 RSA 主机密钥三十五
macOS 11 至 macOS 12macOS 10.12 至 macOS 13仅适用于本地的安全远程密码 (SRP) 协议,如果绑定到 LDAP,则使用 Diffie-HellmanSRP 或 DH 1024 位、128 位 AES2048 位 RSA 主机密钥 macOS 13 至 macOS 10.132048 位 RSA 主机密钥 macOS 10.13 或更高版本33
macOS 11 至 macOS 12OS X 10.11 或更早版本DH 1024 位DH 1024 位、128 位 AES具有 512 位素数的 Diffie-Hellman 密钥协商协议具有 512 位素数的 Diffie-Hellman 密钥协商协议三十

访问远程 MacOs 设备时,请务必使用安全且经过身份验证的连接。此工具仅应与您信任且有权访问的服务器一起使用。

MacOs 代理客户端

轻量级代理,可连接到 LiveKit 房间,实现 macOS 远程控制。采用我们专有的“keep_eyes_open”系统,通过持续感知环境,无需轮询开销,显著提升响应速度和性能。这允许通过高效的双向数据通道实现近乎实时的命令执行和反馈。

执照

麻省理工学院

ID: xe1mcwrxeu