Xcode

MCP Server for interacting with 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.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational
Xcode MCP Server - drewster99/xcode-mcp-server | VeilStrat