mcpField
M
MCPXcode

MCPXcode

本地服务
github.com/everettjf开发工具884 周前更新

关于 MCPXcode

MCPXcode 是面向 Xcode 的开源 MCP 实现,通过封装 xcrun、xctrace 等命令行工具,为 AI 助手提供结构化的开发和性能分析操作。项目处于积极开发阶段。

主要功能

  1. 01封装 xcrun 命令
  2. 02封装 xctrace 性能追踪
  3. 03提供结构化工具输出
  4. 04报告语义化错误与诊断
  5. 05管理模拟器和 SDK

适用场景

  1. 01列出方案并构建 Xcode 项目
  2. 02在模拟器中启动或安装应用
  3. 03记录并分析应用性能追踪

MCP 相关

MCPXcode 通过 MCP 工具向 AI 助手开放 Xcode 相关操作,包括模拟器、SDK、构建及性能追踪功能。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

MCPXcode

!!! 此项目正在积极开发中,因此可能会遇到意外问题

简介

MCPXcode 是 Model Context Protocol (MCP) 面向 Xcode 的开源实现。它通过提供结构化协议,在 Xcode 环境中交换上下文并执行工具,从而实现 Xcode 与 AI 助手之间的无缝集成。

本项目遵循 MCP 规范,在 Xcode 开发环境与 AI 工具之间建立桥梁,通过上下文理解和可编程交互,优化开发者工作流。它封装了常用的命令行工具(xcrun、xctrace),并利用 macOS 辅助功能,实现由 AI 协助的 Xcode 操作自动化。

截图

README 配图 README 配图

安装


# Install uv
curl -LsSf https://astral.sh/uv/install.sh | sh

# Clone the repository
git clone https://github.com/everettjf/MCPXcode.git
cd MCPXcode
source .venv/bin/activate
uv add "mcp[cli]"

配置

{
  "mcpServers": {
    "MCPXcode": {
      "command": "uv", # may use full path
      "args": [
        "--directory",
        "<Path>/MCPXcode", # change to your full path
        "run",
        "main.py"
      ]
    }
  }
}

功能

当前 MCP 工具集成
  • xcrun 工具扩展

    • 为常用 xcrun 命令提供上下文感知接口
    • 提供便于 AI 使用的结构化输出格式
    • 提供语义化错误处理和诊断报告
  • xctrace 工具扩展

    • 为 iOS/macOS 应用提供上下文增强的性能分析和跟踪
    • 收集结构化性能指标,供 AI 分析
    • 在处理跟踪数据时提供语义上下文
计划中的扩展
  • 辅助功能工具扩展

    • 在 Xcode 中进行上下文感知的 UI 交互
    • 为构建、运行和测试操作提供语义化触发器
    • 提供结构化的项目导航能力
    • 增强从 Xcode UI 提取上下文的能力
  • MCP HTTP 服务

    • 通过 HTTP 完全符合 MCP 规范
    • 标准化工具执行协议
    • 为构建事件提供保留上下文的 Webhook
    • 与 AI 驱动的 CI/CD 管道无缝集成
  • MCP 客户端库

    • 实现 MCP 规范的特定语言 SDK
    • 简化 AI 助手与 Xcode 之间的上下文交换

工具文档

模拟器控制工具
工具描述示例提示词
list_devices列出所有可用的模拟器设备及其详细信息"显示所有可用的 iOS 模拟器设备及其状态。"
boot_device启动由 UDID 标识的特定模拟器设备"启动 UDID 为 A1B2C3D4-E5F6-7890-1234-567890ABCDEF 的 iPhone 14 Pro 模拟器。"
shutdown_device关闭正在运行的模拟器设备"关闭当前正在运行且 UDID 为 A1B2C3D4-E5F6-7890-1234-567890ABCDEF 的 iPhone 模拟器。"
install_app在模拟器设备上安装应用"在 iPhone 14 模拟器上安装路径为 /Users/username/MyApp.app 的应用。"
launch_app在模拟器设备上启动已安装的应用"在 iPhone 14 模拟器上启动包 ID 为 com.example.myapp 的应用。"
SDK 工具
工具描述示例提示词
get_sdk_path获取当前 SDK 的路径"当前 iOS SDK 的路径是什么?"
get_sdk_version获取当前 SDK 的版本"我正在使用的 iOS SDK 是什么版本?"
get_sdk_platform_path获取当前 SDK 的平台路径"iOS 平台文件位于哪里?"
find_developer_tool查找特定开发者工具的路径"Xcode 工具链中的 'lldb' 二进制文件位于哪里?"
run_tool_with_sdk使用指定 SDK 运行开发者工具"使用 iOS SDK 运行 'clang' 工具来编译我的源文件。"
xcrun 工具
工具描述示例提示词
xcrun_list_sdks列出所有可用的 SDK,并提供详细信息“显示我可以用于构建的所有可用 SDK。”
xcrun_list_schemes列出指定 Xcode 项目中的所有方案“我的 MyApp.xcodeproj 项目中有哪些构建方案?”
xcrun_build使用指定的方案和配置构建 Xcode 项目“使用 Debug 配置为 iPhone 模拟器构建我的 MyApp.xcodeproj 项目。”
xcrun_validate_app在提交到 App Store 前验证应用“在将我的 MyApp.ipa 文件提交到 App Store 前验证它。”
xcrun_upload_app将应用上传到 App Store Connect“将已验证的 MyApp.ipa 文件上传到 App Store Connect 以供审核。”
xcrun_swift_symbols从二进制文件中提取 Swift 符号“提取并显示应用二进制文件中的所有 Swift 符号。”
xcrun_otool_headers显示二进制文件的 Mach-O 标头“显示应用二进制文件的 Mach-O 标头。”
xcrun_otool_libraries显示二进制文件链接的库“我的应用二进制文件链接了哪些库?”
xcrun_nm_symbols显示二进制文件中的符号“显示应用二进制文件中的所有符号。”
xctrace 工具
工具描述示例提示词
xctrace_devices列出可用于跟踪的设备“显示所有可用于运行性能跟踪的设备。”
xctrace_templates列出可用于跟踪的模板“性能分析有哪些可用的跟踪模板?”
xctrace_record使用指定模板记录应用性能“使用 Time Profiler 模板记录应用的性能跟踪。”
xctrace_record_advanced使用高级选项记录应用性能“使用自定义模板选项记录性能跟踪,并设置环境变量 DEBUG=1。”
xctrace_attach_process附加到正在运行的进程以进行跟踪“将性能跟踪器附加到进程 ID 为 12345 的运行中应用。”
xctrace_export将跟踪数据导出为指定格式“将我的 trace.trace 文件导出为 JSON 格式以供分析。”
xctrace_diagnose诊断跟踪归档中的问题“分析我的跟踪文件,查找任何性能问题或故障。”
xctrace_document为模板生成文档“为 Allocations 模板创建文档,以便我了解其指标。”
xctrace_analyze分析跟踪文件并生成性能报告“根据我的 Time Profiler 跟踪文件生成性能报告。”
xctrace_compare比较两个跟踪文件并生成比较报告“比较我的应用 1.0 版和 2.0 版跟踪文件中的性能。”

项目路线图

阶段 1:MCP 核心实现(2025 年第 2 季度)
  • ✅ 基本项目结构
  • ⬜ 为基本 xcrun 命令扩展工具,并支持上下文处理
  • ⬜ 为基本 xctrace 功能扩展工具,并支持上下文处理
  • ⬜ 符合 MCP 规范的命令行接口
阶段 2:MCP 服务实现(2025 年第 3 季度)
  • ⬜ 完整的 MCP 规范 HTTP 服务
  • ⬜ 上下文感知的身份验证和安全机制
  • ⬜ 结构化上下文交换协议
  • ⬜ 可扩展的工具注册表架构
阶段 3:MCP 无障碍扩展(2025 年第 4 季度)
  • ⬜ 集成 macOS 辅助功能并提供语义上下文
  • ⬜ 上下文感知的 Xcode UI 自动化
  • ⬜ 语义事件监控与上下文响应
阶段 4:高级 MCP 功能(2026 年第 1 季度)
  • ⬜ 符合 MCP 规范的 Python 客户端库
  • ⬜ 与 AI 驱动的 CI/CD 工具进行上下文感知集成
  • ⬜ 语义上下文监控仪表板

许可证

本项目采用 MIT 许可证,详情请参阅 LICENSE 文件。

贡献

欢迎贡献!请随时提交 Pull Request。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。