项目简介
My Apple Remembers MCP服务器是一个基于Model Context Protocol (MCP) 的应用后端,旨在让大型语言模型 (LLM) 能够访问和利用用户Mac电脑上的本地数据,如Apple Notes、日历事件、iMessages、文件等。它通过SSH协议连接到用户的macOS系统,并使用AppleScript执行命令,从而实现数据的检索和存储。
主要功能点
- 记忆检索 (Memory Recall): 允许LLM通过执行AppleScript脚本,从用户的Mac电脑上检索信息,包括Apple Notes、日历事件、iMessages、聊天记录、文件等。
- 记忆持久化 (Memory Persistence): 支持LLM将重要信息保存到Apple Notes,方便后续回顾和使用。
- 极简设置 (Minimal Setup): 只需在目标Mac上启用远程登录 (SSH) 即可,无需复杂的配置。
- 广泛兼容 (Universal Compatibility): 理论上兼容所有macOS版本。
安装步骤
- 启用 macOS 远程登录 (SSH): 请参考 Apple 官方指南 启用 macOS 的远程登录功能。
- 安装 Docker Desktop: 如果您的机器上没有安装 Docker,请根据您的操作系统,访问 Docker 官网 下载并安装 Docker Desktop。
- 配置 MCP 客户端 (如 Claude Desktop): 打开您的 MCP 客户端(例如 Claude Desktop),添加一个新的 MCP 服务器配置。
服务器配置
以下是配置 MCP 客户端连接 My Apple Remembers MCP 服务器所需的 JSON 配置信息。您需要根据您的实际情况修改以下参数:
{ "mcpServers": { "my-apple-remembers": { "command": "docker", "args": [ "run", "-i", "-e", "MACOS_USERNAME=your_macos_username", // [必填] 您的 macOS 用户名 "-e", "MACOS_PASSWORD=your_macos_password", // [必填] 您的 macOS 用户密码 "-e", "MACOS_HOST=localhost", // [可选] 您的 macOS 主机地址,如果 MCP 客户端和服务器运行在同一台机器上,通常为 localhost "-e", "MACOS_PORT=22", // [可选] SSH 端口,默认为 22 "--rm", "buryhuang/mcp-my-apple-remembers:latest" ] } } }
参数说明:
- '"server name": "my-apple-remembers"': 服务器名称,您可以自定义。
- '"command": "docker"': 启动服务器的命令,这里使用 Docker 运行镜像。
- '"args"': 启动命令的参数列表:
- '"run -i"': 运行 Docker 容器,'-i' 参数保持STDIN开放,即使没有连接。
- '"-e MACOS_USERNAME=your_macos_username"': 设置环境变量 'MACOS_USERNAME',请替换为您的 macOS 用户名。
- '"-e MACOS_PASSWORD=your_macos_password"': 设置环境变量 'MACOS_PASSWORD',请替换为您的 macOS 用户密码。
- '"-e MACOS_HOST=localhost"': 设置环境变量 'MACOS_HOST',默认为 'localhost',如果您的 macOS 主机不是本地机器,请修改为实际的主机地址。
- '"-e MACOS_PORT=22"': 设置环境变量 'MACOS_PORT',默认为 '22',如果您的 SSH 端口不是 22,请修改为实际端口号。
- '"--rm"': 容器退出后自动删除。
- '"buryhuang/mcp-my-apple-remembers:latest"': Docker 镜像名称和标签,使用最新的 'buryhuang/mcp-my-apple-remembers' 镜像。
请务必将 'your_macos_username' 和 'your_macos_password' 替换为您实际的 macOS 用户名和密码。
基本使用方法
成功配置并连接到 My Apple Remembers MCP 服务器后,您可以在 LLM 应用中使用以下两个工具:
-
'my_apple_recall_memory': 用于检索 Mac 上的信息。您需要提供 AppleScript 代码片段作为输入,例如:
tell application "Notes" get the name of every note in folder "工作" of account "iCloud" end tellLLM 可以根据您的指令生成合适的 AppleScript 代码,并调用此工具执行。
-
'my_apple_save_memory': 用于将信息保存到 Apple Notes。同样需要提供 AppleScript 代码片段,例如:
tell application "Notes" create note with text "这是一条由 LLM 保存的笔记" in folder "Inbox" of account "iCloud" with name current date end tellLLM 可以根据上下文生成需要保存的内容,并使用此工具将其保存到 Apple Notes。
注意:
- 请确保您的 macOS 开启了远程登录,并且防火墙允许 SSH 连接。
- 出于安全考虑,请仅在您信任的环境中使用此服务器,并妥善保管您的 macOS 用户名和密码。
- 您可以通过 Prompt 指示 LLM 如何使用这两个工具,例如指定要操作的 Apple Notes 文件夹、日历账户等。
信息
分类
桌面与硬件