Xcodemcp
X

Xcodemcp

XcodeMCP是一个通过JavaScript自动化控制Xcode的MCP服务器和CLI工具,提供项目构建、测试、调试及XCResult分析功能。
2.5分
8.2K

什么是XcodeMCP?

XcodeMCP是一个通过JavaScript自动化(JXA)直接控制Xcode的Model Context Protocol服务器。它允许开发者通过命令行或MCP协议与Xcode交互,执行构建、测试、调试等操作,并提供详细的错误分析和测试报告。

如何使用XcodeMCP?

可以通过npm全局安装后使用CLI命令,或作为MCP服务器集成到VS Code等开发环境中。支持两种使用模式:交互式MCP服务器和一次性CLI命令。

适用场景

适合需要在自动化流程中控制Xcode的开发者,特别是需要精确解析构建错误、分析测试结果或集成到AI辅助开发工具中的场景。

主要功能

Xcode控制
直接通过JavaScript自动化控制Xcode,支持打开项目、构建、运行、测试和调试等完整操作流程。
构建日志解析
使用XCLogParser精确解析构建错误位置,提供清晰的错误报告。
测试结果分析
全面分析.xcresult测试结果文件,支持截图提取、UI层级查看和测试日志浏览。
双模式运行
既可作为长期运行的MCP服务器,也可作为一次性CLI工具使用。
优势
直接与Xcode交互,比xcodebuild提供更丰富的功能
精确的错误定位和解析能力
完整的测试结果分析工具集
支持相对路径,使用更方便
详细的健康检查和环境验证
局限性
仅支持macOS系统
需要Xcode完整安装
部分高级功能依赖XCLogParser(可选)
UI层级分析可能产生大量数据

如何使用

安装
通过npm安装XcodeMCP
健康检查
运行健康检查验证环境配置
构建项目
使用CLI构建Xcode项目
分析测试结果
查看测试失败详情和截图

使用案例

构建失败调试
当构建失败时,使用XcodeMCP获取精确的错误位置和描述
测试失败分析
分析UI测试失败原因,查看失败时的屏幕截图和UI层级
CI集成
在持续集成流程中运行测试并分析结果

常见问题

XcodeMCP和xcodebuild有什么区别?
为什么需要XCLogParser?
如何解决'Xcode自动化权限'问题?
支持Xcode的哪些版本?

相关资源

GitHub仓库
项目源代码和问题追踪
XCLogParser文档
构建日志解析工具文档
JavaScript for Automation指南
苹果官方的JXA开发指南
MCP协议规范
Model Context Protocol的官方规范

安装

复制以下命令到你的Client进行配置
{
  "mcpServers": {
    "xcodemcp": {
      "command": "npx",
      "args": ["-y", "xcodemcp@latest"],
      "env": {
        "LOG_LEVEL": "INFO"
      }
    }
  }
}

{
  "mcpServers": {
    "xcodemcp": {
      "command": "npx",
      "args": ["-y", "xcodemcp@latest"],
      "env": {
        "LOG_LEVEL": "DEBUG",
        "XCODEMCP_LOG_FILE": "~/Library/Logs/xcodemcp.log"
      }
    }
  }
}

{
  "mcpServers": {
    "xcodemcp": {
      "command": "npx", 
      "args": ["-y", "xcodemcp@latest"],
      "env": {
        "LOG_LEVEL": "SILENT"
      }
    }
  }
}

{
  "mcpServers": {
    "xcodemcp": {
      "command": "npx",
      "args": ["-y", "xcodemcp@latest"], 
      "env": {
        "LOG_LEVEL": "INFO",
        "XCODEMCP_LOG_FILE": "/tmp/xcodemcp.log",
        "XCODEMCP_CONSOLE_LOGGING": "false"
      }
    }
  }
}
注意:您的密钥属于敏感信息,请勿与任何人分享。

替代品

V
Vestige
Vestige是一个基于认知科学的AI记忆引擎,通过实现预测误差门控、FSRS-6间隔重复、记忆梦境等29个神经科学模块,为AI提供长期记忆能力。包含3D可视化仪表板和21个MCP工具,完全本地运行,无需云端。
Rust
4.5K
4.5分
M
Moltbrain
MoltBrain是一个为OpenClaw、MoltBook和Claude Code设计的长期记忆层插件,能够自动学习和回忆项目上下文,提供智能搜索、观察记录、分析统计和持久化存储功能。
TypeScript
4.1K
4.5分
B
Bm.md
一个功能丰富的Markdown排版工具,支持多种样式主题和平台适配,提供实时编辑预览、图片导出和API集成能力
TypeScript
4.4K
5分
S
Security Detections MCP
Security Detections MCP 是一个基于Model Context Protocol的服务器,允许LLM查询统一的安全检测规则数据库,涵盖Sigma、Splunk ESCU、Elastic和KQL格式。最新3.0版本升级为自主检测工程平台,可自动从威胁情报中提取TTPs、分析覆盖差距、生成SIEM原生格式检测规则、运行测试并验证。项目包含71+工具、11个预构建工作流提示和知识图谱系统,支持多SIEM平台。
TypeScript
6.0K
4分
P
Paperbanana
PaperBanana是一个自动化生成学术图表和统计图的智能框架,支持从文本描述生成高质量的论文插图,采用多智能体管道和迭代优化,提供CLI、Python API和MCP服务器等多种使用方式。
Python
7.7K
5分
B
Better Icons
一个提供超过20万图标搜索和检索的MCP服务器和CLI工具,支持150多个图标库,帮助AI助手和开发者快速获取和使用图标。
TypeScript
6.7K
4.5分
A
Assistant Ui
assistant-ui是一个开源TypeScript/React库,用于快速构建生产级AI聊天界面,提供可组合的UI组件、流式响应、无障碍访问等功能,支持多种AI后端和模型。
TypeScript
7.3K
5分
A
Apify MCP Server
Apify MCP服务器是一个基于模型上下文协议(MCP)的工具,允许AI助手通过数千个现成的爬虫、抓取器和自动化工具(Apify Actor)从社交媒体、搜索引擎、电商等网站提取数据。它支持OAuth和Skyfire代理支付,可通过HTTPS端点或本地stdio方式集成到Claude、VS Code等MCP客户端中。
TypeScript
7.5K
5分
D
Duckduckgo MCP Server
已认证
DuckDuckGo搜索MCP服务器,为Claude等LLM提供网页搜索和内容抓取服务
Python
85.7K
4.3分
F
Firecrawl MCP Server
Firecrawl MCP Server是一个集成Firecrawl网页抓取能力的模型上下文协议服务器,提供丰富的网页抓取、搜索和内容提取功能。
TypeScript
150.9K
5分
F
Figma Context MCP
Framelink Figma MCP Server是一个为AI编程工具(如Cursor)提供Figma设计数据访问的服务器,通过简化Figma API响应,帮助AI更准确地实现设计到代码的一键转换。
TypeScript
74.6K
4.5分
B
Baidu Map
已认证
百度地图MCP Server是国内首个兼容MCP协议的地图服务,提供地理编码、路线规划等10个标准化API接口,支持Python和Typescript快速接入,赋能智能体实现地图相关功能。
Python
50.1K
4.5分
E
Exa Web Search
已认证
Exa MCP Server是一个为AI助手(如Claude)提供网络搜索功能的服务器,通过Exa AI搜索API实现实时、安全的网络信息获取。
TypeScript
57.3K
5分
E
Edgeone Pages MCP Server
EdgeOne Pages MCP是一个通过MCP协议快速部署HTML内容到EdgeOne Pages并获取公开URL的服务
TypeScript
32.0K
4.8分
M
Minimax MCP Server
MiniMax Model Context Protocol (MCP) 是一个官方服务器,支持与强大的文本转语音、视频/图像生成API交互,适用于多种客户端工具如Claude Desktop、Cursor等。
Python
64.7K
4.8分
C
Context7
Context7 MCP是一个为AI编程助手提供实时、版本特定文档和代码示例的服务,通过Model Context Protocol直接集成到提示中,解决LLM使用过时信息的问题。
TypeScript
106.8K
4.7分
AIBase
智启未来,您的人工智能解决方案智库