使用说明
项目简介
Xcode MCP Server 是一个实现了 Model Context Protocol (MCP) 的服务器,专注于为 LLM 客户端提供 Xcode 项目相关的上下文信息和操作能力。通过注册工具 (Tools) 的方式,服务器允许 LLM 客户端调用预定义的功能,例如获取 Xcode 项目信息和构建 Xcode 项目。本服务器旨在简化 LLM 与 Xcode 项目的交互,实现更智能化的 Xcode 自动化任务。
主要功能点
- 执行 Shell 命令 (execute-shell): 允许 LLM 客户端在服务器端执行任意 shell 命令,并返回命令输出结果。为了安全考虑,服务器内置了简单的危险命令过滤。
- 获取 Xcode 项目信息 (xcode-project-info): 允许 LLM 客户端获取指定 Xcode 项目或工作区 (workspace) 的详细信息,例如项目配置、Scheme 列表等。
- 构建 Xcode 项目 (xcode-build): 允许 LLM 客户端构建指定的 Xcode 项目 Scheme,并可指定构建配置 (Configuration) 和目标设备 (Destination)。
安装步骤
- 安装 Node.js 和 npm: 确保你的系统已安装 Node.js (版本 16 或更高) 和 npm (版本 6 或更高)。
- 安装 npm 包: 在命令行终端中执行以下命令安装 '@devyhan/xcode-mcp' 包:
npm install @devyhan/xcode-mcp
服务器配置
要让 MCP 客户端(例如 Claude Desktop)连接到 Xcode MCP Server,你需要配置客户端的 MCP 服务器列表。以下是 Claude Desktop 的配置示例,你需要将以下 JSON 配置添加到 Claude Desktop 的配置文件 'claude_desktop_config.json' 中。
Claude Desktop 配置示例 (JSON):
{ "mcpServers": { "xcode-mcp": { // 服务器名称,客户端用此名称引用 "command": "npx", // 启动服务器的命令,这里使用 npx 运行 npm 包 "args": [ "@devyhan/xcode-mcp", // 要执行的 npm 包名,即 Xcode MCP Server "-y" // (可选) 传递给服务器的参数,这里示例中没有实际作用,可以移除 ] } } }
配置说明:
- '"xcode-mcp"': 这是你为该 MCP 服务器定义的名称,在客户端中会使用这个名称来引用它。你可以自定义名称。
- '"command": "npx"': 指定了启动服务器的命令为 'npx'。'npx' 允许你运行安装在 'node_modules' 中的 npm 包的可执行文件。
- '"args": ["@devyhan/xcode-mcp", "-y"]': 'args' 是一个字符串数组,包含了传递给 'command' 的参数。
- '"@devyhan/xcode-mcp"': 这是要通过 'npx' 运行的 npm 包的名称,即我们安装的 Xcode MCP Server 包。
- '"-y"': 这是一个示例参数,实际 '@devyhan/xcode-mcp' 服务器本身并没有定义 '-y' 参数,这里可以移除或者根据实际服务器未来可能支持的参数进行配置。 通常情况下,启动 MCP 服务器只需要指定包名即可,无需额外参数。
实际配置 (更简洁):
{ "mcpServers": { "xcode-mcp": { "command": "npx", "args": [ "@devyhan/xcode-mcp" ] } } }
基本使用方法
-
启动服务器: 当你在 Claude Desktop (或其他 MCP 客户端) 中配置并启用了 "xcode-mcp" 服务器后,客户端会自动尝试连接并启动服务器。服务器会在后台运行,并通过 Stdio 与客户端通信。
-
客户端请求工具: 在 LLM 客户端中,你可以指示 LLM 使用 'xcode-mcp' 服务器提供的工具来执行操作。例如,你可以向 Claude 提出类似以下指令:
请使用 "xcode-mcp" 服务器的 "xcode-project-info" 工具,获取我的 Xcode 项目 "/Users/username/Projects/MyApp/MyApp.xcodeproj" 的信息。或者:
使用 "xcode-mcp" 服务器的 "xcode-build" 工具,构建项目 "/Users/username/Projects/MyApp/MyApp.xcodeproj",Scheme 为 "MyAppScheme",配置为 "Debug",目标设备为 iOS Simulator。 -
查看结果: LLM 客户端会将工具执行的结果返回给你。对于 Xcode MCP Server 提供的工具,结果通常会包含 Xcode 项目的信息或构建日志等文本内容。
注意: 由于 'execute-shell' 工具可以执行任意 shell 命令,请务必谨慎使用,只执行你信任的命令,并避免执行包含敏感信息的命令。
信息
分类
开发者工具