{"id":28266848,"url":"https://github.com/cameroncooke/xcodebuildmcp","last_synced_at":"2026-02-08T23:21:23.176Z","repository":{"id":284630152,"uuid":"945551361","full_name":"cameroncooke/XcodeBuildMCP","owner":"cameroncooke","description":"A Model Context Protocol (MCP) server that provides Xcode-related tools for integration with AI assistants and other MCP clients.","archived":false,"fork":false,"pushed_at":"2025-06-09T14:35:17.000Z","size":2201,"stargazers_count":1457,"open_issues_count":10,"forks_count":62,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-06-09T14:50:49.438Z","etag":null,"topics":["mcp","mcp-server","model-context-protocol","model-context-protocol-servers","xcode","xcodebuild"],"latest_commit_sha":null,"homepage":"https://www.async-let.com/blog/xcodebuild-mcp/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cameroncooke.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":"cameroncooke","buy_me_a_coffee":"cameroncooke"}},"created_at":"2025-03-09T17:31:18.000Z","updated_at":"2025-06-09T14:37:29.000Z","dependencies_parsed_at":"2025-04-14T22:24:52.094Z","dependency_job_id":"e6bf669e-b3ea-40f5-aa25-637b5cfac882","html_url":"https://github.com/cameroncooke/XcodeBuildMCP","commit_stats":null,"previous_names":["cameroncooke/xcodemcp","cameroncooke/xcodebuildmcp"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/cameroncooke/XcodeBuildMCP","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cameroncooke%2FXcodeBuildMCP","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cameroncooke%2FXcodeBuildMCP/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cameroncooke%2FXcodeBuildMCP/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cameroncooke%2FXcodeBuildMCP/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cameroncooke","download_url":"https://codeload.github.com/cameroncooke/XcodeBuildMCP/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cameroncooke%2FXcodeBuildMCP/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260663050,"owners_count":23044042,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["mcp","mcp-server","model-context-protocol","model-context-protocol-servers","xcode","xcodebuild"],"created_at":"2025-05-20T15:04:03.236Z","updated_at":"2026-02-08T23:21:23.167Z","avatar_url":"https://github.com/cameroncooke.png","language":"TypeScript","readme":"\u003cimg src=\"banner.png\" alt=\"XcodeBuild MCP\" width=\"600\"/\u003e\n\nA Model Context Protocol (MCP) server and CLI that provides tools for agent use when working on iOS and macOS projects.\n\n[![CI](https://github.com/cameroncooke/XcodeBuildMCP/actions/workflows/ci.yml/badge.svg)](https://github.com/cameroncooke/XcodeBuildMCP/actions/workflows/ci.yml)\n[![npm version](https://badge.fury.io/js/xcodebuildmcp.svg)](https://badge.fury.io/js/xcodebuildmcp) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![Node.js](https://img.shields.io/badge/node-\u003e=18.x-brightgreen.svg)](https://nodejs.org/) [![Xcode 16](https://img.shields.io/badge/Xcode-16-blue.svg)](https://developer.apple.com/xcode/) [![macOS](https://img.shields.io/badge/platform-macOS-lightgrey.svg)](https://www.apple.com/macos/) [![MCP](https://img.shields.io/badge/MCP-Compatible-green.svg)](https://modelcontextprotocol.io/) [![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/cameroncooke/XcodeBuildMCP)\n\n## Installation\n\n### CLI Installation\n\n```bash\nnpm install -g xcodebuildmcp@latest\nxcodebuildmcp --help\n```\n\n### MCP Server Installation\n\nAdd XcodeBuildMCP to your MCP client configuration. Most clients use JSON configuration with the following server entry:\n\n```json\n\"XcodeBuildMCP\": {\n  \"command\": \"npx\",\n  \"args\": [\"-y\", \"xcodebuildmcp@latest\", \"mcp\"]\n}\n```\n\n\u003cdetails\u003e\n  \u003csummary\u003eCursor\u003c/summary\u003e\n  \u003cbr /\u003e\n\n  Recommended (project-scoped): add `.cursor/mcp.json` in your workspace root:\n  ```json\n  {\n    \"mcpServers\": {\n      \"XcodeBuildMCP\": {\n        \"command\": \"npx\",\n        \"args\": [\"-y\", \"xcodebuildmcp@latest\", \"mcp\"]\n      }\n    }\n  }\n  ```\n\n  For global Cursor config (`~/.cursor/mcp.json`), use this variant so startup is aligned with the active workspace:\n  ```json\n  {\n    \"mcpServers\": {\n      \"XcodeBuildMCP\": {\n        \"command\": \"/bin/zsh\",\n        \"args\": [\n          \"-lc\",\n          \"cd \\\"${workspaceFolder}\\\" \u0026\u0026 exec npx -y xcodebuildmcp@latest mcp\"\n        ]\n      }\n    }\n  }\n  ```\n\n  Or use the quick install link:\n\n[![Install MCP Server](https://cursor.com/deeplink/mcp-install-light.svg)](https://cursor.com/en-US/install-mcp?name=XcodeBuildMCP\u0026config=eyJjb21tYW5kIjoibnB4IC15IHhjb2RlYnVpbGRtY3BAbGF0ZXN0IG1jcCJ9)\n  \u003cbr /\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eClaude Code\u003c/summary\u003e\n  \u003cbr /\u003e\n\n  Run:\n  ```bash\n  claude mcp add XcodeBuildMCP -- npx -y xcodebuildmcp@latest mcp\n  ```\n  \u003cbr /\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eCodex CLI\u003c/summary\u003e\n  \u003cbr /\u003e\n\n  Run:\n  ```bash\n  codex mcp add XcodeBuildMCP -- npx -y xcodebuildmcp@latest mcp\n  ```\n\n  Or add to `~/.codex/config.toml`:\n  ```toml\n  [mcp_servers.XcodeBuildMCP]\n  command = \"npx\"\n  args = [\"-y\", \"xcodebuildmcp@latest\", \"mcp\"]\n  ```\n  \u003cbr /\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eClaude Desktop\u003c/summary\u003e\n  \u003cbr /\u003e\n\n  Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:\n  ```json\n  {\n    \"mcpServers\": {\n      \"XcodeBuildMCP\": {\n        \"command\": \"npx\",\n        \"args\": [\"-y\", \"xcodebuildmcp@latest\", \"mcp\"]\n      }\n    }\n  }\n  ```\n  \u003cbr /\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eVS Code / VS Code Insiders\u003c/summary\u003e\n  \u003cbr /\u003e\n\n  Add to your VS Code settings JSON:\n  ```json\n  \"mcp\": {\n    \"servers\": {\n      \"XcodeBuildMCP\": {\n        \"command\": \"npx\",\n        \"args\": [\"-y\", \"xcodebuildmcp@latest\", \"mcp\"]\n      }\n    }\n  }\n  ```\n\n  Or use the quick install links:\n\n  [![Install in VS Code](https://img.shields.io/badge/VS_Code-XcodeBuildMCP-0098FF?style=flat\u0026logo=visualstudiocode\u0026logoColor=ffffff)](vscode:mcp/install?%7B%22name%22%3A%22XcodeBuildMCP%22%2C%22type%22%3A%22stdio%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22xcodebuildmcp%40latest%22%2C%22mcp%22%5D%7D)\n  [![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-XcodeBuildMCP-24bfa5?style=flat\u0026logo=visualstudiocode\u0026logoColor=ffffff)](vscode-insiders:mcp/install?%7B%22name%22%3A%22XcodeBuildMCP%22%2C%22type%22%3A%22stdio%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22xcodebuildmcp%40latest%22%2C%22mcp%22%5D%7D)\n  \u003cbr /\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eWindsurf\u003c/summary\u003e\n  \u003cbr /\u003e\n\n  Add to `~/.codeium/windsurf/mcp_config.json`:\n  ```json\n  {\n    \"mcpServers\": {\n      \"XcodeBuildMCP\": {\n        \"command\": \"npx\",\n        \"args\": [\"-y\", \"xcodebuildmcp@latest\", \"mcp\"]\n      }\n    }\n  }\n  ```\n  \u003cbr /\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eTrae\u003c/summary\u003e\n  \u003cbr /\u003e\n\n  Add to `~/Library/Application Support/Trae/User/mcp.json`:\n  ```json\n  {\n    \"mcpServers\": {\n      \"XcodeBuildMCP\": {\n        \"command\": \"npx\",\n        \"args\": [\"-y\", \"xcodebuildmcp@latest\", \"mcp\"]\n      }\n    }\n  }\n  ```\n  \u003cbr /\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eXcode (Codex Agent)\u003c/summary\u003e\n  \u003cbr /\u003e\n\n  Requires Xcode 26.3 or later. Codex agent must be installed and configured in Xcode Settings -\u003e Intelligence -\u003e Open AI.\n\n  The only way at the time of writing to add an MCP server is to use a project scoped `.codex/config.toml` file in the root of your project workspace:\n  `/path/to/your/project/.codex/config.toml`\n\n  ```toml\n  [mcp_servers.XcodeBuildMCP]\n  args = [\n  \"-lc\",\n  \"PATH=/opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin; export NVM_DIR=\\\"$HOME/.nvm\\\"; [ -s \\\"$NVM_DIR/nvm.sh\\\" ] \u0026\u0026 . \\\"$NVM_DIR/nvm.sh\\\"; nvm use --silent \u003e/dev/null 2\u003e\u00261 || true; npx -y xcodebuildmcp@latest mcp\"\n  ]\n  command = \"/bin/zsh\"\n  enabled = true\n  tool_timeout_sec = 10000\n  ```\n\n  \u003e **NOTE**: \n  \u003e Codex Agent when running in Xcode has a limited PATH by default. The above example should work for most users but if you find the server doesn't start or is not available, it's likely because npx is not found so you might have to adjust the above configuration accordingly.\n\n  \u003cbr /\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eXcode (Claude Code Agent)\u003c/summary\u003e\n  \u003cbr /\u003e\n\n  Requires Xcode 26.3 or later. Claude Code agent must be installed and configured in Xcode Settings -\u003e Intelligence -\u003e Anthropic.\n\n  Add to the end or replace the existing `mcpServers` object in Xcode's Claude Code agent config at:\n  `~/Library/Developer/Xcode/CodingAssistant/ClaudeAgentConfig/.claude.json`\n\n  ```json\n    // ... rest of file ...\n    \"mcpServers\": {\n      \"XcodeBuildMCP\": {\n        \"command\": \"/bin/zsh\",\n        \"args\": [\n          \"-lc\",\n          \"PATH=/opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin; export NVM_DIR=\\\"$HOME/.nvm\\\"; [ -s \\\"$NVM_DIR/nvm.sh\\\" ] \u0026\u0026 . \\\"$NVM_DIR/nvm.sh\\\"; nvm use --silent \u003e/dev/null 2\u003e\u00261 || true; npx -y xcodebuildmcp@latest mcp\"\n        ]\n      }\n    }\n  }\n  ```\n\n  \u003e **NOTE**: \n  \u003e Claude Code Agent when running in Xcode has a limited PATH by default. The above example should work for most users but if you find the server doesn't start or is not available, it's likely because npx is not found so you might have to adjust the above configuration accordingly.\n\n  \u003cbr /\u003e\n\u003c/details\u003e\n\n\u003cbr /\u003e\n\nFor other installation options see [Getting Started](docs/GETTING_STARTED.md)\n\nWhen configuring a client manually, ensure the command includes the `mcp` subcommand (for example, `npx -y xcodebuildmcp@latest mcp`).\n\n## Requirements\n\n- macOS 14.5 or later\n- Xcode 16.x or later\n- Node.js 18.x or later\n\n## Skills\n\nXcodeBuildMCP now includes two optional agent skills:\n\n- **MCP Skill**: Primes the agent with instructions on how to use the MCP server's tools (optional when using the MCP server).\n\n- **CLI Skill**: Primes the agent with instructions on how to navigate the CLI (recommended when using the CLI).\n\n\nTo install, copy and paste the command below into a terminal and follow the on-screen instructions.\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/cameroncooke/XcodeBuildMCP/v2.0.0/scripts/install-skill.sh -o install-skill.sh \u0026\u0026 bash install-skill.sh\n```\n\nFor further information on how to install the skill, see: [docs/SKILLS.md](docs/SKILLS.md)\n\n## Notes\n\n- XcodeBuildMCP requests xcodebuild to skip macro validation to avoid errors when building projects that use Swift Macros.\n- Device tools require code signing to be configured in Xcode. See [docs/DEVICE_CODE_SIGNING.md](docs/DEVICE_CODE_SIGNING.md).\n\n## Privacy\n\nXcodeBuildMCP uses Sentry for error telemetry. For more information or to opt out of error telemetry see [docs/PRIVACY.md](docs/PRIVACY.md).\n\n## CLI\n\nXcodeBuildMCP provides a unified command-line interface. The `mcp` subcommand starts the MCP server, while all other commands provide direct terminal access to tools:\n\n```bash\n# Install globally\nnpm install -g xcodebuildmcp@latest\n\n# Start the MCP server (for MCP clients)\nxcodebuildmcp mcp\n\n# List available tools\nxcodebuildmcp tools\n\n# Build for simulator\nxcodebuildmcp simulator build --scheme MyApp --project-path ./MyApp.xcodeproj\n```\n\nThe CLI uses a per-workspace daemon for stateful operations (log capture, debugging, etc.) that auto-starts when needed. See [docs/CLI.md](docs/CLI.md) for full documentation.\n\n## Documentation\n\n- Getting started: [docs/GETTING_STARTED.md](docs/GETTING_STARTED.md)\n- CLI usage: [docs/CLI.md](docs/CLI.md)\n- Configuration and options: [docs/CONFIGURATION.md](docs/CONFIGURATION.md)\n- Tools reference: [docs/TOOLS.md](docs/TOOLS.md)\n- Troubleshooting: [docs/TROUBLESHOOTING.md](docs/TROUBLESHOOTING.md)\n- Privacy: [docs/PRIVACY.md](docs/PRIVACY.md)\n- Skills: [docs/SKILLS.md](docs/SKILLS.md)\n- Contributing: [docs/dev/CONTRIBUTING.md](docs/dev/CONTRIBUTING.md)\n\n## Licence\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n","funding_links":["https://github.com/sponsors/cameroncooke","https://buymeacoffee.com/cameroncooke"],"categories":["Community Servers","Developer Tools","MCP Servers \u0026 Protocol"],"sub_categories":["How to Submit"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcameroncooke%2Fxcodebuildmcp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcameroncooke%2Fxcodebuildmcp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcameroncooke%2Fxcodebuildmcp/lists"}