JUHE API Marketplace
ebowwa avatar
MCP Server

Xcode MCP Server

Provides programmatic access to Xcode functionality, enabling AI assistants to create, build, test, and manage iOS/macOS projects directly.

2
GitHub Stars
8/23/2025
Last Updated
MCP Server Configuration
1{
2 "name": "xcode-mcp",
3 "command": "node",
4 "args": [
5 "/path/to/xcode-mcp/dist/index.js"
6 ],
7 "env": {}
8}
JSON8 lines

README Documentation

Xcode MCP (Model Context Protocol) Server

A comprehensive MCP server that provides programmatic access to Xcode functionality, enabling AI assistants like Claude to create, build, test, and manage iOS/macOS projects directly.

🚀 Features

Project Management

  • Create new Xcode projects - Generate complete project structures with SwiftUI templates
  • Build projects - Compile apps with customizable configurations
  • Run tests - Execute unit and UI tests
  • Archive apps - Create archives for distribution
  • Manage schemes - List and work with project schemes

File Operations

  • Create Swift files - Write source code directly to the filesystem
  • Modify Info.plist - Update app configurations programmatically
  • Create directories - Set up project folder structures
  • Read files - Access and analyze existing code

Simulator Management

  • List simulators - View all available iOS, watchOS, and tvOS simulators
  • Boot/shutdown simulators - Control simulator lifecycle
  • Install apps - Deploy apps to simulators
  • Launch apps - Run apps with specific bundle IDs
  • Capture screenshots - Take simulator screenshots programmatically

📦 Installation

# Clone the repository
git clone https://github.com/yourusername/xcode-mcp.git
cd xcode-mcp

# Install dependencies
npm install

# Build the project
npm run build

🔧 Configuration

Add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "xcode-mcp": {
      "command": "node",
      "args": ["/path/to/xcode-mcp/dist/index.js"],
      "env": {}
    }
  }
}

🎯 Usage

Once configured, Claude can use these tools directly:

Creating a New Project

User: "Create a new iOS app called MyApp"
Claude: *uses xcode_create_project to generate the project structure*

Building Projects

User: "Build my iOS app"
Claude: *uses xcode_build_project with appropriate parameters*

Managing Simulators

User: "Show me available simulators"
Claude: *uses xcode_list_simulators to display options*

📚 Available Tools

ToolDescription
xcode_create_projectCreate new Xcode projects with templates
xcode_create_swift_fileWrite Swift source files
xcode_build_projectBuild Xcode projects
xcode_test_projectRun project tests
xcode_list_simulatorsList available simulators
xcode_boot_simulatorStart a simulator
xcode_install_app_simulatorInstall apps on simulators
xcode_modify_plistModify plist files
xcode_show_build_settingsDisplay build configurations
xcode_archive_projectCreate app archives

🛠️ Development

Prerequisites

  • Node.js 16+
  • Xcode 14+
  • macOS 12+

Building from Source

npm install
npm run build

Running in Development

npm run dev

🤝 Contributing

We welcome contributions! Please see our Contributing Guide for details.

📋 Requirements

  • macOS: Required for Xcode integration
  • Xcode: Must be installed with command line tools
  • Node.js: Version 16 or higher

🐛 Troubleshooting

Common Issues

Simulators not showing:

  • Ensure Xcode is properly installed
  • Run xcode-select --install for command line tools

Build failures:

  • Check Xcode project paths are correct
  • Verify scheme names match exactly

MCP connection errors:

  • Restart Claude Desktop after configuration changes
  • Check logs at ~/Library/Logs/Claude/mcp-server-xcode-mcp.log

📄 License

MIT License - see LICENSE file for details.

🙏 Acknowledgments

📞 Support

Quick Install

Quick Actions

Key Features

Model Context Protocol
Secure Communication
Real-time Updates
Open Source