使用说明

项目简介

AppleScript MCP服务器是一个基于Model Context Protocol (MCP) 的后端应用,它充当LLM客户端与macOS系统之间的桥梁。通过这个服务器,LLM可以调用预定义的工具来执行AppleScript代码,从而实现对macOS应用程序和系统功能的控制和数据访问。例如,LLM可以利用此服务器创建日历事件、读取邮件、操作文件、获取系统信息等。

主要功能点

  • 执行AppleScript代码: 允许LLM客户端通过 'applescript_execute' 工具,向服务器发送AppleScript代码片段,并在macOS系统上执行。
  • 访问macOS应用和数据: 支持通过AppleScript与多种macOS应用程序(如Notes, Calendar, Contacts, Messages, Finder, Safari等)进行交互,获取和操作数据。
  • 系统功能控制: 能够执行如搜索文件、获取电池状态、截屏、管理文件和文件夹、运行shell命令等系统级操作。
  • 简单易用: 设计简洁直观,易于安装和配置,核心代码量少。
  • 双语言支持: 提供Node.js和Python两种服务器端实现。

安装步骤

Node.js 版本:

  1. 安装Node.js和npm: 如果你的系统上没有安装Node.js和npm,请先安装。你可以从 nodejs.org 下载并安装。
  2. 全局安装 'applescript-mcp' 包: 打开终端,运行以下命令进行全局安装:
    npm install -g @peakmojo/applescript-mcp

Python 版本:

  1. 安装Python: 确保你的系统上安装了Python 3.7 或更高版本。macOS 通常预装了Python。
  2. 安装 'uv' (推荐): 'uv' 是一个快速的Python包安装和虚拟环境管理工具。可以使用 Homebrew 安装:
    brew install uv
    或者使用 'pip' 安装:
    pip install uv
  3. 克隆仓库: 从GitHub克隆 'applescript-mcp' 仓库到本地:
    git clone https://github.com/peakmojo/applescript-mcp
    cd applescript-mcp
  4. 使用 'uv' 安装依赖并运行服务器: 在仓库根目录下,使用 'uv' 运行服务器脚本:
    uv run src/applescript_mcp/server.py
    或者,如果你没有安装 'uv',可以使用 'pip' 安装依赖并运行:
    pip install -r requirements.txt
    python src/applescript_mcp/server.py

服务器配置

MCP客户端需要配置MCP服务器的启动命令才能连接。以下是针对 Node.jsPython 版本的配置信息,请根据你的选择配置到MCP客户端(例如 Claude Desktop):

Node.js 配置 (推荐):

{
  "mcpServers": {
    "applescript_execute": {
      "command": "npx",  // 使用 npx 命令运行 npm 包
      "args": [
        "@peakmojo/applescript-mcp" //  要执行的 npm 包名,全局安装后可以直接通过包名运行
      ]
    }
  }
}

Python 配置:

{
  "mcpServers": {
    "applescript_execute": {
      "command": "uv",  // 使用 uv 命令 (如果使用 pip,则替换为 python)
      "args": [
        "--directory",  // 指定工作目录
        "/path/to/your/repo", //  替换为 applescript-mcp 仓库在您本地的绝对路径
        "run",          //  uv run 命令用于执行 Python 脚本
        "src/applescript_mcp/server.py" //  Python 服务器脚本的路径
      ]
    }
  }
}

注意: 将 Python 配置中的 '/path/to/your/repo' 替换为你克隆的 'applescript-mcp' 仓库在本地的实际路径。 如果你没有使用 'uv',而是使用 'pip' 安装并运行 Python 版本,则 'command' 字段应改为 '"python"',并相应调整 'args'。

基本使用方法

  1. 启动MCP服务器: 根据上述安装步骤启动 Node.js 或 Python 版本的 AppleScript MCP 服务器。服务器启动后,通常会在终端输出 "MCP server started and ready to receive requests" 或类似信息。

  2. 配置MCP客户端: 在你的MCP客户端(如 Claude Desktop)中,配置 "mcpServers" 部分,使用上面提供的 JSON 配置代码,确保配置正确指向你启动的 AppleScript MCP 服务器。

  3. 在LLM Prompt中调用工具: 在LLM的Prompt中,你可以指示LLM调用 'applescript_execute' 工具来执行AppleScript代码。例如:

    请执行AppleScript代码,创建一个新的备忘录,标题为 "LLM会议纪要",内容为 "今天的会议讨论了...".

    LLM 会解析你的指令,并生成调用 'applescript_execute' 工具的请求,并将相应的AppleScript代码作为参数发送给 AppleScript MCP 服务器。服务器执行 AppleScript 代码后,会将结果返回给 LLM 客户端。

示例AppleScript代码:

你可以参考仓库 'README.md' 文件中的 "Example Prompts" 部分,了解可以执行的 AppleScript 代码示例,例如:

  • 获取电池电量:
    tell application "System Events"
        set batteryLevel to get battery level of current battery of power supply
        return "Battery level: " & batteryLevel & "%"
    end tell
  • 创建日历事件:
    tell application "Calendar"
      tell calendar "Home"
        make new event at end with properties {summary:"Team Meeting", start date:date "2024-08-10 10:00:00", end date:date "2024-08-10 11:00:00"}
      end tell
    end tell

安全提示: 请谨慎使用 'applescript_execute' 工具,避免执行未经验证的或恶意的AppleScript代码,因为它可以对你的系统进行操作。

信息

分类

桌面与硬件