Enables the building and management of iOS applications by interfacing with Xcode project structures and build tools.
Facilitates interaction with macOS-based Xcode development environments to manage projects and trigger system-level builds.
Provides tools for interacting with Xcode projects, allowing AI agents to list projects, inspect targets and schemes, and execute builds.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Xcode MCP Serverbuild the MyApp scheme for iPhone 15 simulator"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
π¨ Xcode MCP Server
The first MCP server for Xcode β Let AI agents like Claude build your iOS apps!
An MCP (Model Context Protocol) server that gives AI assistants the power to work with Xcode projects. List projects, read configurations, inspect targets, and trigger builds β all through natural conversation.
β¨ Features
Tool | Description |
| Find all Xcode projects in a directory tree |
| Parse .xcodeproj structure (targets, configs, files) |
| Get build targets with product types |
| List available build schemes |
| Trigger xcodebuild with configurable options |
| Get Xcode version and available SDKs |
π Quick Start
Prerequisites
macOS with Xcode Command Line Tools (
xcode-select --install)Node.js 18+
npm or yarn
Installation
# Clone the repo
git clone https://github.com/airdrop-alpha/xcode-mcp.git
cd xcode-mcp
# Install dependencies
npm install
# Build TypeScript
npm run buildConfiguration
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"xcode": {
"command": "node",
"args": ["/absolute/path/to/xcode-mcp/dist/index.js"]
}
}
}OpenClaw
Add to your OpenClaw MCP config:
{
"mcpServers": {
"xcode": {
"command": "node",
"args": ["/absolute/path/to/xcode-mcp/dist/index.js"]
}
}
}π¬ Example Conversation
You: List Xcode projects in my Developer folder
Claude: Found 3 Xcode projects:
β’ MyApp.xcodeproj
β’ TestFramework.xcodeproj
β’ SampleProject.xcodeproj
You: What targets does MyApp have?
Claude: MyApp has 3 targets:
β’ MyApp (application)
β’ MyAppTests (unit-test)
β’ MyAppUITests (ui-test)
You: Build it for iPhone 15 simulator
Claude: β
Build succeeded!π οΈ Tool Reference
list-projects
Find Xcode projects in a directory (recursive, 5 levels deep).
{ "directory": "/path/to/search" }read-project
Parse an Xcode project file and return its structure.
{ "projectPath": "/path/to/MyApp.xcodeproj" }Returns: Project name, targets, build configurations, source files.
list-targets
List build targets with their product types.
{ "projectPath": "/path/to/MyApp.xcodeproj" }Returns: Target names and types (app, framework, test, etc.)
list-schemes
List available schemes (shared and user).
{ "projectPath": "/path/to/MyApp.xcodeproj" }build
Build a project using xcodebuild.
{
"projectPath": "/path/to/MyApp.xcodeproj",
"scheme": "MyApp",
"configuration": "Debug",
"destination": "platform=iOS Simulator,name=iPhone 15",
"clean": false
}xcodebuild-info
Get Xcode version and SDK information. No parameters required.
ποΈ Architecture
xcode-mcp/
βββ src/
β βββ index.ts # MCP server entry point
β βββ xcode-parser.ts # Xcode project file parser
βββ dist/ # Compiled JavaScript
βββ package.json
βββ tsconfig.json
βββ README.mdβ οΈ Current Limitations
Parses
.xcodeprojfiles directly (simplified parser).xcworkspacesupport coming soonBuild output truncated to last 5KB for large projects
Code signing disabled by default for faster builds
πΊοΈ Roadmap
Workspace (
.xcworkspace) supportSimulator management (list, boot, install)
Test execution with result parsing
Swift Package dependencies
Provisioning profile management
App Store Connect integration
π€ Contributing
Contributions are welcome! Please read CONTRIBUTING.md first.
# Development mode (hot reload)
npm run dev
# Test with MCP Inspector
npm run inspectπ License
MIT Β© 2026
Built for the AI-assisted development era. π€
Resources
Looking for Admin?
Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access the admin panel.