Xcode 诊断 MCP 插件
用于从 Xcode 构建日志中提取和查看错误和警告的 MCP(模型控制协议)插件。
概述
此插件实现了模型控制协议 (MCP) 规范,为任何兼容的 AI 助手提供 Xcode 诊断功能。它连接到 Xcode 的构建系统,从您的 Swift 项目中提取、解析和显示诊断信息(错误和警告)。它可以帮助 AI 助手快速识别代码中的问题,而无需手动搜索构建日志。
请注意,由于这在日志级别起作用,因此在运行此工具之前 Xcode 必须已经尝试过构建。
先决条件
- macOS 操作系统
- 已安装 Xcode
- Python 3.6+
安装
从 PyPI 安装
安装 Xcode Diagnostics MCP 插件的最简单方法:
从 GitHub 安装
您可以直接从 GitHub 安装:
从源代码安装
从源安装:
- 克隆或下载此存储库
- 使用 pip 安装插件:
该插件现在可以与任何兼容 MCP 的客户端一起使用。
特征
- 列出 DerivedData 中具有构建日志的所有 Xcode 项目
- 从特定项目的最新构建日志中提取错误和警告
- 解析复杂的诊断,包括相关注释和修复建议
- 提供有关每个问题的详细信息,包括文件路径、行号和错误消息
- 针对捕获 Swift 并发相关警告进行了优化
支持的诊断类型
该插件可以检测并显示各种类型的 Xcode 诊断,包括:
错误
- 语法错误(例如,“预期‘{’”或“预期表达式”)
- 类型错误(例如,“无法将类型 X 的值转换为预期参数类型 Y”)
- 未解析的标识符和缺失的导入
- 协议一致性错误
- 通用参数推断失败
- 访问控制违规
警告
- 未使用的变量、常量和结果
- 隐式转换可能会丢失精度
- 冗余代码或不必要的表达式
- 弃用警告
- 字符串插值问题
- Swift 并发警告,包括:
- 非隔离全局共享可变状态警告
- 主要演员隔离警告
- 协议一致性并发警告
- Actor 隔离违规
- Swift 6 语言模式兼容性警告
注释和修复建议
- 相关注释为错误和警告提供了额外的上下文
- 提出代码更改以解决问题的修复建议
- 显示有问题的代码片段
限制
- 运行时日志中的二进制/序列化格式可能无法完全解析
- 一些高度专业化的诊断格式可能无法识别
- 非常大的构建日志可能会被截断
- 项目特定的自定义诊断可能未正确分类
MCP 工具
该插件提供了两个主要的 MCP 工具:
获取xcode项目
列出 DerivedData 目录中所有带有构建日志的 Xcode 项目。
参数:无
获取项目诊断
从特定项目的最新构建日志中获取诊断信息。
参数:
project_dir_name
:DerivedData 中项目的目录名称(例如,'ProjectName-hash')include_warnings
:除了错误之外是否包含警告(默认值:True)
调试信息
为了调试目的,插件将原始日志输出保存到:
/tmp/xcode-mcp-debug.log
- 主应用程序日志/tmp/xcode-diagnostic-raw.log
- Xcode 活动日志的原始输出
示例输出
测试
该插件包括一个测试套件来验证解析功能:
执照
该项目可在 MIT 许可下使用。
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
连接到 Xcode 的构建系统以提取、解析和显示来自 Swift 项目的错误和警告,帮助 AI 助手快速识别代码问题,而无需手动搜索构建日志。
Related MCP Servers
- -securityFlicense-qualityProvides AI-powered assistance for coding problems using Google's Gemini AI, combined with Perplexity insights and Stack Overflow references, facilitating contextual analysis and automatic response archiving for improved troubleshooting.Last updated -10TypeScript
- AsecurityAlicenseAqualityBridges Claude AI with Xcode, enabling AI-powered code assistance, project management, and automated development tasks securely on your local machine.Last updated -967254TypeScriptMIT License
- AsecurityAlicenseAquality🍎 Build iOS Xcode workspace/project and feed back errors to llm.Last updated -245PythonMIT License
- -securityFlicense-qualityA Model Context Protocol server that enables AI assistants to build and test Xcode projects directly through a standardized interface, with capabilities for running tests, monitoring progress, and accessing logs in real-time.Last updated -29TypeScript