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
Tool | Description |
---|---|
xcode_create_project | Create new Xcode projects with templates |
xcode_create_swift_file | Write Swift source files |
xcode_build_project | Build Xcode projects |
xcode_test_project | Run project tests |
xcode_list_simulators | List available simulators |
xcode_boot_simulator | Start a simulator |
xcode_install_app_simulator | Install apps on simulators |
xcode_modify_plist | Modify plist files |
xcode_show_build_settings | Display build configurations |
xcode_archive_project | Create 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
- Built on the Model Context Protocol by Anthropic
- Uses Apple's Xcode command line tools
📞 Support
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Wiki: Documentation Wiki
Quick Install
Quick Actions
Key Features
Model Context Protocol
Secure Communication
Real-time Updates
Open Source