Xcode-Studio-MCP
xcode-studio-mcp
Servidor MCP unificado para Xcode + Simulador de iOS: compila, despliega, captura pantallas e interactúa con tu aplicación iOS desde Claude Code, Codex, Cursor o cualquier cliente MCP.
Desarrollado en Swift. Binario único. No requiere entorno de ejecución de Node/Python.
Por qué existe esto
Actualmente necesitas 2 o 3 herramientas separadas para realizar el ciclo completo de desarrollo de iOS con un agente de IA. xcode-studio-mcp las combina en una sola:
Write code → Build → Deploy to Simulator → Screenshot → Tap/Type → VerifyHerramientas
Herramienta | Descripción |
| Compila un proyecto de Xcode con salida de errores estructurada (archivo, línea, columna, gravedad, mensaje) |
| Compila y lanza una aplicación en el Simulador de iOS |
| Captura la pantalla del Simulador como una imagen PNG |
| Toca en las coordenadas x,y de la pantalla del Simulador |
| Escribe texto en el campo enfocado actualmente |
| Obtiene el árbol de accesibilidad de la pantalla actual (JSON) |
Parámetros de las herramientas
xcode_build
Parámetro | Requerido | Descripción |
| Sí | Ruta al directorio del proyecto Xcode, |
| No | Esquema de compilación (detectado automáticamente si se omite) |
| No |
|
| No | Destino de compilación (predeterminado al simulador iniciado) |
xcode_run
Parámetro | Requerido | Descripción |
| Sí | Ruta al proyecto Xcode |
| Sí | ID del bundle de la aplicación (ej. |
| No | Esquema de compilación (detectado automáticamente) |
| No | Simulador de destino (predeterminado al iniciado) |
simulator_screenshot
Parámetro | Requerido | Descripción |
| No | Simulador de destino (predeterminado al iniciado) |
simulator_tap
Parámetro | Requerido | Descripción |
| Sí | Coordenada X |
| Sí | Coordenada Y |
| No | Duración de la pulsación en segundos (para pulsación larga) |
| No | Simulador de destino |
simulator_type
Parámetro | Requerido | Descripción |
| Sí | Texto a escribir |
| No | Simulador de destino |
simulator_describe
Parámetro | Requerido | Descripción |
| No | Simulador de destino |
Inicio rápido
Requisitos previos
macOS con Xcode instalado
Para herramientas de interacción de interfaz de usuario (
tap,type,describe):brew tap facebook/fb && brew install idb-companion pip3 install fb-idb
Compilación
git clone https://github.com/kevinswint/xcode-studio-mcp.git
cd xcode-studio-mcp
swift build -c releaseConfigurar Claude Code
Añade a tu configuración de MCP de Claude Code:
{
"mcpServers": {
"xcode-studio-mcp": {
"command": "/path/to/xcode-studio-mcp/.build/release/XcodeStudioMCP"
}
}
}Ejemplo de flujo de trabajo
You: Build and run my app at ~/Projects/MyApp
Claude: [calls xcode_build] Build succeeded with 0 errors
[calls xcode_run] App launched (PID 12345)
[calls simulator_screenshot] Here's what the app looks like...
[calls simulator_describe] I can see a "Sign In" button and email/password fields
[calls simulator_tap] Tapped the email field
[calls simulator_type] Typed "test@example.com"
[calls simulator_screenshot] Here's the current state...Arquitectura
┌─────────────────────────────┐
│ MCP Protocol Layer │ stdio transport (Swift MCP SDK)
├─────────────────────────────┤
│ Tool Implementations │ 6 tools, structured error output
├──────────┬──────────────────┤
│ xcodebuild│ simctl │ idb │ native process calls
│ wrapper │ wrapper │ CLI │
└──────────┴──────────┴──────┘Desarrollado en Swift sin dependencias de tiempo de ejecución de Node/Python (la CLI de idb solo es necesaria para las herramientas de interacción de interfaz de usuario).
Hoja de ruta
v0.1 (actual): Compilación básica + herramientas de simulador
v1.0: Navegación semántica de la interfaz de usuario ("toca el botón Iniciar sesión"), comparación visual, manipulación de archivos de proyecto Xcode, operaciones compuestas, captura de vista previa de SwiftUI
Proyectos relacionados
Proyecto | Qué hace | Diferencia |
Solo compilación + pruebas | Sin interacción de interfaz de usuario del simulador | |
Interfaz de usuario de simulador multiplataforma | Sin soporte de compilación de Xcode | |
Simulador vía IDB | Sin compilación, depende de IDB para todo |
xcode-studio-mcp combina la compilación e interacción en un solo servidor.
Contribuciones
Las solicitudes de extracción (PRs) son bienvenidas. El código base tiene unas 750 líneas de Swift organizadas en Herramientas, Servicios y Modelos.
Licencia
MIT
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/kevinswint/xcode-studio-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server