Skip to main content
Glama

πŸ”¨ Xcode MCP Server

The first MCP server for Xcode β€” Let AI agents like Claude build your iOS apps!

License: MIT MCP Platform

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

list-projects

Find all Xcode projects in a directory tree

read-project

Parse .xcodeproj structure (targets, configs, files)

list-targets

Get build targets with product types

list-schemes

List available build schemes

build

Trigger xcodebuild with configurable options

xcodebuild-info

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 build

Configuration

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 .xcodeproj files directly (simplified parser)

  • .xcworkspace support coming soon

  • Build output truncated to last 5KB for large projects

  • Code signing disabled by default for faster builds

πŸ—ΊοΈ Roadmap

  • Workspace (.xcworkspace) support

  • Simulator 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. πŸ€–

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/airdrop-alpha/xcode-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server