local-only server
The server can only run on the client’s local machine because it depends on local resources.
Integrations
Allows interaction with macOS through AppleScript, including calendar management, clipboard operations, Finder integration, system notifications, system controls, and iTerm terminal integration
Required as a prerequisite for running the MCP server
Planned feature to allow opening pages in Safari, saving page content, and getting selected page/tab
applescript-mcp MCP 服务器
一个模型上下文协议服务器,使 LLM 应用程序能够通过 AppleScript 与 macOS 交互。该服务器为 AI 应用程序提供标准化接口,用于控制系统功能、管理文件、处理通知等。
特征
- 🗓️ 日历管理(事件、提醒)
- 📋 剪贴板操作
- 🔍 Finder 集成
- 🔔 系统通知
- ⚙️ 系统控制(音量、暗模式、应用程序)
- 📟 iTerm 终端集成
计划功能
- 📬 邮件(列出电子邮件、保存附件、汇总、发送)
- 🧭 Safari(在 Safari 中打开、保存页面内容、获取选定的页面/标签)
- 💬 消息(发送、获取、列表)
- ✅ 提醒(创建、获取)
- 🗒️ 注释(创建、获取、列出)
先决条件
- macOS 10.15 或更高版本
- Node.js 18 或更高版本
可用类别
日历
命令 | 描述 | 参数 |
---|---|---|
add | 创建日历事件 | title 、 startDate 、 endDate |
list | 列出今天的活动 | 没有任何 |
剪贴板
命令 | 描述 | 参数 |
---|---|---|
set_clipboard | 复制到剪贴板 | content |
get_clipboard | 获取剪贴板内容 | 没有任何 |
clear_clipboard | 清除剪贴板 | 没有任何 |
发现者
命令 | 描述 | 参数 |
---|---|---|
get_selected_files | 获取选定的文件 | 没有任何 |
search_files | 搜索文件 | query , location (可选) |
quick_look | 预览文件 | path |
通知
命令 | 描述 | 参数 |
---|---|---|
send_notification | 显示通知 | title 、 message 、 sound (可选) |
toggle_do_not_disturb | 切换 DND 模式 | 没有任何 |
系统
命令 | 描述 | 参数 |
---|---|---|
volume | 设置系统音量 | level (0-100) |
get_frontmost_app | 获取活动应用程序 | 没有任何 |
launch_app | 打开应用程序 | name |
quit_app | 关闭应用程序 | name 、 force (可选) |
toggle_dark_mode | 切换暗模式 | 没有任何 |
iTerm
命令 | 描述 | 参数 |
---|---|---|
paste_clipboard | 粘贴到 iTerm | 没有任何 |
run | 执行命令 | command , newWindow (可选) |
发展
设置
Copy
添加新功能
1. 创建类别文件
创建src/categories/newcategory.ts
:
Copy
2.添加脚本
Copy
3. 注册类别
更新src/index.ts
:
Copy
调试
使用 MCP 检查器
MCP Inspector 提供了一个用于测试和调试服务器的 Web 界面:
Copy
日志记录
通过设置环境变量启用调试日志记录:
Copy
常见问题
- 权限错误:检查系统偏好设置 > 安全和隐私
- 脚本失败:直接在脚本编辑器中测试脚本。
- 通信问题:检查 stdio 流是否被重定向
资源
贡献
- 分叉存储库
- 创建功能分支
- 提交你的更改
- 推送到分支
- 创建拉取请求
执照
MIT 许可证 - 详情请参阅许可证