← 返回目录
A

AppleScript MCP Server

社区
通过 AppleScript 完全控制你的 Mac
GitHub 源仓库 ↗
★ 462 Stars 分类 · 开发工具 热门 源版本 2efc108111ce
41FMRS · D
可靠性
5/20
安全与权限
7/20
维护活跃度
10/20
文档质量
9/20
安装易用性
10/20

AppleScript MCP Server 是一个简单、轻量级的 MCP 服务器,允许通过 AppleScript 控制 Mac。它支持多种安装方式(Node.js、Python),并且可以远程执行。然而,它授予执行任意代码的权限,因此用户在使用时需要谨慎,并确保仅在安全的环境中使用。

查看 FMRS 评分方法 →

一个 Model Context Protocol (MCP) 服务器,让你运行 AppleScript 代码来与 Mac 交互。它被设计为简单、直接、直观且需要最少配置。核心代码不到 100 行。它支持运行 AppleScript 来访问 Mac 应用程序和数据,例如与备忘录、日历、通讯录、信息等交互;使用 Spotlight 或 Finder 搜索文件;读写文件内容以及执行 shell 命令。还支持通过 SSH 远程执行。

工具能力

execute_applescript
执行一段 AppleScript 代码并返回结果。

安装接入

### 使用 Claude Desktop 的安装步骤:

#### Node.js

在 Claude Desktop 的配置文件中添加:

{
  "mcpServers": {
    "applescript_execute": {
      "command": "npx",
      "args": ["@peakmojo/applescript-mcp"]
    }
  }
}

#### Python (uvx)

无需克隆仓库,直接运行:

{
  "mcpServers": {
    "applescript_execute": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/peakmojo/applescript-mcp", "mcp-server-applescript"]
    }
  }
}

#### Python (本地开发)

克隆仓库并使用 uv 运行:

brew install uv
git clone https://github.com/peakmojo/applescript-mcp.git

然后配置:

{
  "mcpServers": {
    "applescript_execute": {
      "command": "uv",
      "args": ["--directory", "/path/to/your/repo", "run", "mcp-server-applescript"]
    }
  }
}

选型与风险

适合谁

  • 想要通过自然语言控制 Mac 的 Claude Desktop 用户
  • 需要自动化常见 macOS 任务(如管理日历、备忘录、邮件、文件系统)的开发者
  • 希望快速设置、无需复杂配置的 MCP 服务器用户

不适合谁

  • 需要远程执行且不希望设置 SSH 的用户(除非他们配置了 SSH 选项)
  • 需要广泛、平台无关控制的用户(该服务器仅适用于 macOS)
  • 需要高级安全沙箱或审计功能的生产环境用户(因为该服务器允许执行任意 AppleScript,风险较高)

所需权限

  • 执行 AppleScript 代码的能力,可以访问 Mac 上的应用程序和数据
  • 访问文件系统(读取/写入文件)
  • 执行 shell 命令
  • 通过 SSH 远程连接(如果启用)

风险与副作用

  • 执行任意 AppleScript 可能对系统进行更改,包括删除文件、修改设置或发送消息
  • 访问敏感数据,如联系人、日历、邮件和文件内容
  • 如果使用 SSH 远程执行,凭据可能被泄露,且远程控制可能被滥用
  • AppleScript 错误可能导致意外行为或系统不稳定

常见排障

  1. 确保 macOS 上启用了 AppleScript 支持(通常默认启用)
  2. 如果使用 SSH 远程执行,确保 Mac 上启用了远程登录(系统设置 → 共享 → 远程登录),并且提供正确的用户名和密码
  3. 如果使用 Docker,请确保在配置中使用 `host.docker.internal` 作为远程主机
  4. 检查 MCP 服务器日志以获取错误信息

使用场景

创建提醒事项,例如 '创建提醒,让我明天上午 10 点打电话给 John'
在日历中添加会议,例如 '为周五下午 2-3 点添加一个会议,标题为“团队评审”'
创建笔记,例如 '创建标题为“会议记录”的笔记,并包含今天的日期'
查找文件,例如 '显示我下载文件夹中过去一周的所有文件'
检查系统信息,例如 '我当前的电池百分比是多少?'
管理应用程序,例如 '列出我 Mac 上当前正在运行的所有应用程序'
控制媒体播放,例如 '在 Apple Music 中播放我的“专注”播放列表'
屏幕截图,例如 '截取我整个屏幕的截图并保存到桌面'

支持客户端

Claude Desktop完整支持