项目简介
'macOS Use MCP Server' 是一个实现了 Model Context Protocol (MCP) 协议的服务器,专为 macOS 系统设计。它利用 macOS 的辅助功能 API,将你的 macOS 桌面变成一个可被 LLM (大型语言模型) 控制的环境。通过这个服务器,LLM 客户端可以远程调用预定义的工具,与 macOS 应用程序进行交互,例如打开应用、模拟点击、输入文本、按下键盘按键等。这为构建基于 LLM 的 macOS 自动化应用提供了强大的后端支持。
主要功能点
- 基于 MCP 协议: 遵循标准的 MCP 协议,易于与任何兼容 MCP 协议的 LLM 客户端集成。
- macOS 应用程序控制: 提供丰富的工具集,允许 LLM 客户端控制 macOS 应用程序的各种操作。
- 辅助功能 API: 利用 macOS 强大的辅助功能 API 实现对应用程序的精细化控制,包括 UI 元素的识别和操作。
- 标准输入/输出通信: 通过标准输入/输出 (stdio) 与客户端通信,部署和运行简单方便。
- 可扩展工具集: 工具设计模块化,易于扩展新的 macOS 操作工具。
- 灵活的参数配置: 工具调用支持多种可选参数,可以根据具体需求调整操作行为。
安装步骤
- 环境准备: 确保你的 macOS 系统上安装了 Swift 编译环境。如果未安装,请参考 Swift 官方文档进行安装。
- 下载代码: 从 GitHub 仓库 'https://github.com/mediar-ai/mcp-server-macos-use' 克隆或下载源代码。
- 编译项目: 打开终端,进入项目根目录,执行以下命令进行编译:
编译成功后,可执行文件将生成在 '.build/debug' 或 '.build/release' 目录下。swift build -c debug # 使用 debug 模式编译,方便开发调试 # 或者 swift build -c release # 使用 release 模式编译,用于生产环境
服务器配置
要让 MCP 客户端(例如 Claude Desktop)连接到 'macOS Use MCP Server',需要在客户端的配置文件中添加服务器配置信息。以下是一个 JSON 格式的配置示例,你需要根据实际情况修改 'command' 字段中的路径:
{ "mcpServers": { "macos-use-server": { // 服务器名称,可以自定义,客户端用此名称引用 "command": "/path/to/your/project/mcp-server-macos-use/.build/debug/mcp-server-macos-use" // macOS Use MCP Server 可执行文件的绝对路径,请替换为你的实际路径 } } }
请务必将 '/path/to/your/project/' 替换为你本地 'mcp-server-macos-use' 项目的实际绝对路径。 客户端在启动后会根据此配置启动 'macOS Use MCP Server' 进程,并通过标准输入/输出与其进行通信。
基本使用方法
- 启动服务器: MCP 客户端会根据配置自动启动 'macOS Use MCP Server'。你无需手动运行服务器。
- 客户端调用工具: 在 LLM 客户端中,你可以通过 MCP 协议的 'CallTool' 方法调用服务器提供的工具。例如,要打开 Safari 浏览器,你可以调用 'macos-use_open_application_and_traverse' 工具,并传递 'identifier' 参数为 "Safari"。
- 查看工具列表和参数: 详细的工具列表和参数说明请参考仓库的 README.md 文件中的 "Available Tools" 章节。在客户端使用工具前,请仔细阅读工具的描述和参数要求。
- 处理服务器响应: 客户端会接收服务器返回的 JSON-RPC 响应,根据响应内容进行后续处理。例如,工具执行成功或失败的信息、以及操作后的 macOS 应用程序的 UI 结构信息等。
通过 'macOS Use MCP Server',你可以构建强大的 LLM 应用,实现对 macOS 应用程序的自动化控制和交互。
信息
分类
桌面与硬件