Swift MCP GUI 服务器使用说明

项目简介

Swift MCP GUI Server 是一个实现了 Model Context Protocol (MCP) 协议的服务器,它扩展了 LLM 的能力,使其能够与 macOS 桌面环境进行交互。通过提供一系列预定义的工具,该服务器允许 LLM 客户端控制鼠标移动、鼠标点击、键盘输入和屏幕滚动等操作,从而实现更丰富的自动化应用场景。

主要功能点

  • 鼠标控制: 提供工具让 LLM 客户端控制鼠标光标的移动和点击操作。
  • 键盘输入: 支持 LLM 客户端模拟键盘输入,发送按键和快捷键组合。
  • 屏幕滚动: 允许 LLM 客户端控制屏幕滚动,方便浏览长文档或网页。
  • MCP 协议: 遵循 MCP 协议标准,易于与各种 MCP 客户端集成。
  • 安全性: 虽然功能强大,但也强调安全风险,提醒用户仅连接可信的 MCP 客户端。

安装步骤

  1. 克隆仓库: 打开终端,执行以下命令克隆仓库到本地:

    git clone https://github.com/NakaokaRei/swift-mcp-gui.git
    cd swift-mcp-gui
  2. 安装服务器: 在仓库目录下,运行 Swift 包管理器命令进行安装:

    swift package experimental-install

    安装成功后,可执行文件 'swift-mcp-gui' 将被安装到 '~/.swiftpm/bin/' 目录。

服务器配置

要让 MCP 客户端连接到 Swift MCP GUI Server,需要在客户端的配置文件中添加服务器信息。以下是一个示例配置,您需要根据实际情况修改 'command' 字段中的用户名:

{
  "mcpServers" : {
    "swift-mcp-gui" : {
      "command" : "/Users/USERNAME/.swiftpm/bin/swift-mcp-gui"
    }
  }
}

配置参数说明:

  • '"swift-mcp-gui"': 服务器名称,可以自定义,用于在 MCP 客户端中标识该服务器。
  • '"command"': 服务器启动命令。请将 'USERNAME' 替换为您的 macOS 用户名。此命令指定了 'swift-mcp-gui' 可执行文件的路径。

注意: MCP 客户端通常会读取 JSON 配置文件来发现和连接 MCP 服务器。具体的配置文件位置和格式请参考您使用的 MCP 客户端的文档。

基本使用方法

  1. 启动服务器: 当 MCP 客户端尝试连接 'swift-mcp-gui' 服务器时,客户端会根据配置的 'command' 自动启动服务器进程。通常无需手动启动服务器。

  2. 客户端调用工具: 在 MCP 客户端中,您可以使用预定义的工具名称 (Tool name) 和参数来调用服务器提供的功能。例如,要移动鼠标到坐标 (100, 200),可以调用 'moveMouse' 工具,并传入 'x: 100, y: 200' 作为输入。

    可用工具列表 (及其输入参数):

    • 'moveMouse': 移动鼠标
      • 'x': X 坐标 (浮点数)
      • 'y': Y 坐标 (浮点数)
    • 'mouseClick': 鼠标点击
      • 'button': 鼠标按键 ("left" 或 "right" 字符串)
    • 'sendKeys': 键盘输入
      • 'keys': 按键名称数组 (字符串数组),例如 '["command", "shift", "s"]' 表示 Command+Shift+S 快捷键。
    • 'scroll': 屏幕滚动
      • 'direction': 滚动方向 ("up", "down", "left", "right" 字符串)
      • 'clicks': 滚动量 (整数)
  3. 查看服务器响应: MCP 客户端会接收服务器返回的 JSON-RPC 响应,以确认工具调用是否成功或获取执行结果(如果工具返回数据)。

安全提示: 由于该服务器可以完全控制您的鼠标和键盘,请务必谨慎使用,并仅连接您信任的 MCP 客户端,防止恶意操作。

信息

分类

桌面与硬件