Enables AI assistants to control and interact with Xcode projects, including building and running projects, retrieving build errors, getting project hierarchy, cleaning projects, and accessing runtime output.
Xcode MCP Server
An MCP (Model Context Protocol) server that enables AI assistants to control and interact with Xcode for Apple platform development.
What It Does
This server allows AI assistants (like Claude, Cursor, or other MCP clients) to:
Discover and navigate your Xcode projects and source files
Build and run iOS, macOS, tvOS, and watchOS applications
Execute and monitor tests with detailed results
Debug build failures by retrieving errors and warnings
Capture console output from running applications
Take screenshots of Xcode windows and iOS simulators
Manage simulators and view their status
The AI can perform complete development workflows - from finding a project, to building it, running tests, debugging failures, and capturing results.
Requirements
macOS - This server only works on macOS
Xcode - Xcode must be installed
Python 3.8+ - For running the server
Security
The server implements path-based security to control which directories are accessible:
With restrictions: Set
XCODEMCP_ALLOWED_FOLDERS=/path1:/path2:/path3
to limit access to specific directoriesDefault: If not specified, allows access to your home directory (
$HOME
)
Security requirements:
All paths must be absolute (starting with
/
)No
..
path components allowedAll paths must exist and be directories
Setup
First, ensure uv
is installed (required for all methods below):
1. Claude Code (Recommended)
To run a specific version, use:
That's it! Claude Code handles the rest automatically.
2. Claude Desktop
Edit your Claude Desktop config file (~/Library/Application Support/Claude/claude_desktop_config.json
):
If you'd like to allow only certain projects or folders to be accessible by xcode-mcp-server, add the env
option, with a colon-separated list of absolute folder paths, like this:
3. Cursor AI
In Cursor: Settings → Tools & Integrations → + New MCP Server
Or edit ~/.cursor/mcp.json
directly:
Optional: Add folder restrictions with an env
section (same format as Claude Desktop above).
Usage
Once configured, simply ask your AI assistant to help with Xcode tasks:
"Find all Xcode projects in my home directory"
"Build the project at /path/to/MyProject.xcodeproj"
"Run tests for this project and show me any failures"
"What are the build errors in this project?"
"Show me the directory structure of this project"
"Take a screenshot of the Xcode window"
Most tools work with paths to .xcodeproj
or .xcworkspace
files, or with regular directory paths for browsing and navigation.
Advanced Configuration
Command Line Arguments
When running the server directly (for development or custom setups), these options are available:
Build output control:
--no-build-warnings
- Show only errors, exclude warnings--always-include-build-warnings
- Always show warnings (default)
Notifications:
--show-notifications
- Enable macOS notifications for operations--hide-notifications
- Disable notifications (default)
Access control:
--allowed /path
- Add allowed folder (can be repeated)
Example:
Note: When using MCP clients (Claude, Cursor), configure these via the env
section in your client's config file instead.
Development
The server is built with FastMCP and uses AppleScript to communicate with Xcode.
Local Testing
Test with MCP Inspector:
This opens an inspector interface where you can test tools directly. Provide paths as quoted strings: "/Users/you/Projects/MyApp.xcodeproj"
Limitations
AppleScript syntax may need adjustments for specific Xcode versions
Some operations require the project to be open in Xcode first
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.
Enable Claude Code, Cursor, or your favorite LLM to interact with Xcode, building your projects the same way you do, and seeing the same errors. Greatly increases productivity when working on iOS, iPadOS, macOS, visionOS, tvOS projects & Swift packages - or any time you might use Xcode.
Related MCP Servers
- -securityAlicense-qualityFacilitates integration with the Cursor code editor by enabling real-time code indexing, analysis, and bi-directional communication with Claude, supporting concurrent sessions and automatic reconnection.Last updated -039MIT License
- AsecurityAlicenseAqualityBridges Claude AI with Xcode, enabling AI-powered code assistance, project management, and automated development tasks securely on your local machine.Last updated -17319MIT License
- -securityAlicense-qualityA comprehensive code analysis and management tool that integrates with Claude Desktop to analyze code at project and file levels, helping adapt changes to projects intelligently.Last updated -39MIT License
- -securityAlicense-qualityA server that acts as a bridge between Claude and local Xcode projects, enabling AI-powered code assistance, project management, and automated development tasks without exposing your code to the internet.Last updated -MIT License