- Home
- MCP servers
- Xcode
Xcode
- python
4
GitHub Stars
python
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"drewster99-xcode-mcp-server": {
"command": "uvx",
"args": [
"xcode-mcp-server"
],
"env": {
"XCODEMCP_ALLOWED_FOLDERS": "/Users/you/projects:/Users/you/Documents"
}
}
}
}This MCP server lets your AI assistants control Xcode on macOS to explore projects, build and run apps, execute tests, capture results, and interact with simulators and windows. It enables end-to-end development workflows from locating a project to running it and collecting outputs, all through MCP-enabled clients.
How to use
Set up the server once, then connect an MCP client to perform Xcode tasks. You can discover projects, navigate directories, build and run iOS/macOS/tvOS/watchOS apps, execute tests, pull build errors, capture console output, take screenshots of Xcode windows or simulators, and manage the status of simulators. When you give your AI assistant a task, it will use the configured MCP endpoint to perform the steps and return results for you to review.
How to install
Prerequisites you need to meet before installing and running the server are clear. You must be on macOS with Xcode installed and Python 3.8 or newer. You also need a method to run the MCP server, which commonly involves installing a helper runtime used by MCP clients.
Install the required helper runtime (uv) if it is not already available on your system. Run this command to verify and install if needed:
which uv || brew install uv
Additional setup for MCP clients
Connect your MCP client to the xcode MCP server using the standard micro-command pattern shown here. The client stores the server as an MCP entry and uses the runtime to start the server process.
claude mcp add --scope user --transport stdio -- xcode-mcp-server `which uvx` xcode-mcp-server
Claude Desktop configuration example
If you use Claude Desktop, point it to the MCP server by editing the Claude Desktop configuration so it can start the server when needed.
{
"mcpServers": {
"xcode-mcp-server": {
"command": "uvx",
"args": [
"xcode-mcp-server"
]
}
}
}
Cursor AI configuration example
For Cursor AI, add a new MCP server entry or edit the existing mcp.json to include the Xcode MCP server.
{
"mcpServers": {
"xcode-mcp-server": {
"command": "uvx",
"args": ["xcode-mcp-server"]
}
}
}
Security and access control
Control which folders the server can access. Use an environment variable to specify allowed folders. Absolute paths only, no .. components, and the paths must exist and be directories.
Example access restriction you can apply when starting the server or configuring the client:
XCODEMCP_ALLOWED_FOLDERS=/Users/you/projects:/Users/you/Documents
Available tools
discover_projects
Discover and navigate Xcode projects and source files in allowed folders.
build_project
Build an Xcode project or workspace and report build results, including warnings and errors.
run_tests
Execute tests for the selected project and deliver detailed results.
debug_build
Retrieve errors and warnings to help diagnose build failures.
capture_console
Capture console output from running applications and simulators.
take_screenshot
Capture screenshots of Xcode windows or iOS simulators.
manage_simulators
Manage and monitor status of Xcode simulators.