SilbercueSwift
Servidor MCP de automatización para simulador iOS — compilar, probar, capturar pantalla (20ms), interacción con UI, registro, git. Integración directa con WDA, sin sobrecarga de Appium. 55 herramientas, nivel Gratuito y Pro.
Documentación
SilbercueSwift
El servidor MCP más rápido y completo para desarrollo iOS. Un solo binario Swift, 58 herramientas, cero dependencias. SilbercueSwift tiene el conjunto de herramientas más completo de cualquier alternativa existente.
Diseñado para Claude Code, Cursor y cualquier agente de IA compatible con MCP.
¿Buscas una alternativa a los servidores MCP de iOS existentes? SilbercueSwift cubre el conjunto completo de funciones de XcodeBuildMCP, Appium-MCP e iosef en un solo binario — además de análisis de xcresult, automatización de UI, cobertura de código y capturas de pantalla hasta 75 veces más rápidas. Consulta la comparación a continuación.
¿Por qué SilbercueSwift?
Todos los servidores MCP de iOS tienen el mismo problema: la salida cruda de xcodebuild es inútil para los agentes de IA. 500 líneas de registro de compilación, ruido de stderr confundido con errores, sin resultados de pruebas estructurados. Los agentes pierden minutos analizando lo que un humano ve en segundos.
SilbercueSwift soluciona esto. Analiza los paquetes .xcresult — los mismos datos estructurados que Xcode usa internamente — y devuelve exactamente lo que el agente necesita: conteos de aprobados/fallidos, mensajes de error con archivo:línea, cobertura de código por archivo y capturas de pantalla de fallos.
| Lo que obtienes | XcodeBuildMCP | Appium-MCP | iosef | SilbercueSwift |
|---|---|---|---|---|
| Latencia de captura de pantalla | ~1127ms | ~77ms | ~83ms | ~316ms ( |
| Jerarquía de vistas | ~259ms | ~938ms | ~44ms | ~31ms ( |
| Buscar elemento | — | 76ms | 50ms | 31ms ( |
| Tocar (coordenadas) | 235ms | 470ms | 48ms | 16ms ( |
| Deslizar | 1284ms | 2685ms | 262ms | ~250ms |
| Compilar para simulador | Sí | — | — | Sí |
| Compilar + Ejecutar en una sola llamada | Sí (secuencial) | — | — | Sí (paralelo, ~9s más rápido) |
| Resultados de pruebas estructurados | Parcial | — | — | JSON completo de xcresult |
| Capturas de pantalla de fallos desde xcresult | — | — | — | Exportación automática |
| Cobertura de código por archivo | Básica | — | — | Ordenada, filtrable |
| Diagnóstico de errores de compilación | Análisis de stderr | — | — | JSON de xcresult con archivo:línea |
| Navegar (buscar + tocar + verificar) | — | — | — | 1 llamada (~380ms) |
| Doble toque | — | — | — | ~60ms |
| Arrastrar y soltar | — | Solo coordenadas (3 llamadas) | — | De elemento a elemento (1 llamada) |
| Desplazarse hasta un elemento | — | Bucle manual de deslizamiento | — | SmartScroll (1 llamada) |
| Manejo de alertas | — | Alerta única | — | Búsqueda de 3 niveles + aceptar_todo en lote |
| Diálogo ContactsUI de iOS 18 | — | — | — | Compatible |
| Automatización de UI en lote | — | — | — | run_plan: planes de varios pasos con decisiones adaptativas |
| Filtrado de registros | Solo subsistema | — | Parcial | Filtrado por tema: 90% menos tokens |
| Registro de consola por prueba fallida | — | — | — | Opcional |
| Esperar patrón de registro | — | — | — | Regex + tiempo de espera |
| Regresión visual | — | — | — | Línea base + diferencia de píxeles |
| Verificación multi-dispositivo | — | — | — | Modo oscuro, horizontal, iPad |
| Multiplataforma (Android) | — | Sí | — | — |
| Herramientas | 77 (Rust) | 61 (Node.js + Appium) | 15 (Swift) | 58 (Swift nativo, 8.5MB) |
| Inicio en frío | ~400ms | ~1000ms | ~100ms | ~50ms |
Donde SilbercueSwift realmente destaca
Capturas de pantalla hasta 75 veces más rápidas — ~316ms (
~15ms)
Las capturas de pantalla del nivel gratuito (~316ms) son más rápidas que XcodeBuildMCP (~1127ms) y la mayoría de las alternativas. Pro reduce la latencia a ~15ms — 5 veces más rápido que Appium, 75 veces más rápido que XcodeBuildMCP. Los agentes pueden tomar capturas de pantalla libremente sin penalización en cualquiera de los dos niveles.
Resultados de pruebas estructurados desde paquetes xcresult — cero conjeturas sobre fallos
Cuando una prueba falla, el agente recibe el mensaje de error, el archivo:línea exacto, una captura de pantalla del estado de fallo y, opcionalmente, la salida de consola — todo analizado desde el formato .xcresult de Apple. Sin adivinar a partir de 500 líneas de stderr de xcodebuild. Esta es la diferencia entre "el agente sabe qué falló" y "el agente adivina qué falló".
Un solo binario, cero dependencias — 58 herramientas, instalación en 10 segundos
brew install silbercue/silbercue/silbercueswift — listo. Binario Swift nativo de 8.5MB. Sin Node.js, sin npm, sin servidor Appium, sin Python, sin Java, sin cadena de herramientas Rust. Inicio en frío en ~50ms. La forma más rápida de tener un servidor MCP de iOS funcionando.
El agente lee solo lo que importa — 90% menos tokens, cero llamadas desperdiciadas (filtrado por tema
)
El nivel gratuito ya elimina el ruido: 15 procesos de ruido conocidos se excluyen en el momento de la captura y las líneas duplicadas se colapsan (reducción del 79% de E/S). Pro añade filtrado por tema — read_logs categoriza las líneas en 8 temas y muestra solo la app + fallos por defecto, con un menú: network(87) lifecycle(12) springboard(8). El agente abre temas específicos en una sola llamada — sin adivinar, sin iteraciones.
Una llamada para descartar todos los diálogos de permisos — 3 alertas en 1 ida y vuelta
Cada app muestra 2–3 diálogos de permisos en el primer lanzamiento. Otros servidores requieren que el agente capture pantalla → busque el botón → haga clic, por cada diálogo. handle_alert(action: "accept_all") los elimina todos en una sola llamada, buscando en SpringBoard, ContactsUI y la app activa. El nivel gratuito maneja alertas individualmente con accept / dismiss.
Arrastrar y soltar con IDs de elementos — 1 llamada en lugar de 3
"Arrastrar el elemento A sobre el elemento B" es una sola llamada: drag_and_drop(source_element: "el-0", target_element: "el-1"). La competencia solo admite coordenadas brutas, lo que obliga al agente a encontrar ambos elementos, extraer sus marcos y construir una secuencia W3C Actions — mínimo 3 llamadas.
Auto-desplazamiento a elementos fuera de pantalla — no más bucles manuales de deslizamiento
find_element(using: "accessibility id", value: "Save", scroll: true) se desplaza automáticamente hasta que el elemento aparece. SmartScroll maneja UIKit, SwiftUI y listas de carga diferida — sin adivinar la dirección del desplazamiento.
Jerarquía de vistas en ~31ms (Gratis) / ~5ms (Pro) — inspección de elementos hasta 188 veces más rápida
get_source devuelve el árbol completo de UI en ~31ms (Gratis) o ~5ms (Pro). El competidor más rápido tarda 44ms, la mayoría tarda 250ms+. Esto hace que la inspección de elementos sea prácticamente gratuita para los agentes.
Navegar en una llamada — buscar + tocar + estabilizar + captura de pantalla en ~380ms
navigate(to: "Settings") encuentra el elemento, lo toca, espera a que la pantalla se estabilice y devuelve una captura de pantalla de verificación — todo en una sola llamada. Ningún competidor ofrece esto. Los agentes ahorran 3-4 llamadas de herramientas por paso de navegación.
Automatización de UI en lote — run_plan ejecuta planes de varios pasos con decisiones adaptativas
run_plan toma una secuencia de pasos de UI y los ejecuta en el servidor. Cuando un paso necesita una decisión (diálogo inesperado, elemento no encontrado), recurre a 4 niveles — desde muestreo MCP hasta pausa y reanudación. No más sobrecarga de "una llamada de herramienta por toque".
Inicio rápido
Instalar vía Homebrew
brew tap silbercue/silbercue
brew install silbercueswift
O compilar desde el código fuente
git clone https://github.com/silbercue/SilbercueSwift.git
cd SilbercueSwift
swift build -c release
cp .build/release/SilbercueSwift /usr/local/bin/
Configurar en Claude Code
Un comando — instala globalmente para todos los proyectos:
claude mcp add --scope user SilbercueSwift /opt/homebrew/bin/SilbercueSwift
Nota: Usa la ruta completa (
/opt/homebrew/bin/SilbercueSwift). Claude Code inicia servidores MCP sin un PATH de shell completo, por lo que los nombres de comandos simples no se encontrarán.
Configurar en Cursor
Añade a ~/.cursor/mcp.json:
{
"mcpServers": {
"SilbercueSwift": {
"command": "/opt/homebrew/bin/SilbercueSwift"
}
}
}
Configurar en otros clientes MCP (Cline, Continue, etc.)
Cualquier cliente que admita servidores MCP stdio: apunta a /opt/homebrew/bin/SilbercueSwift sin argumentos.
Desinstalar
claude mcp remove --scope user SilbercueSwift
brew uninstall silbercueswift
brew untap silbercue/silbercue
Gratis vs Pro
SilbercueSwift incluye 49 herramientas gratis — compilar, probar, simular, automatizar UI, capturar registros y tomar capturas de pantalla. Sin límite de tiempo, sin registro.
Pro añade 9 herramientas e internos más rápidos para equipos y usuarios avanzados que necesitan el panorama completo.
| Gratis | Pro | |
|---|---|---|
| Compilación, pruebas, gestión de simulador | 49 herramientas | 58 herramientas |
| Captura de pantalla | ~316ms | ~15ms (75 veces más rápido) |
| Resultados de pruebas estructurados (xcresult) | Sí | Sí |
| Buscar elemento | 31ms | <1ms |
| Jerarquía de vistas | 31ms | ~5ms |
| Tocar (coordenadas) | 16ms | 4ms |
| Clic / escribir / deslizar / doble toque / toque prolongado / arrastrar y soltar | Sí | Sí |
| Navegar (buscar + tocar + verificar) | Sí | Sí |
| Automatización de UI en lote (run_plan) | Sí | Sí |
| Manejo de alertas | Aceptar/descartar individual | + Aceptar_todo / descartar_todo en lote |
| Captura de registros | Inteligente + detallado | + Modo app, filtrado por tema |
| Captura de consola, herramientas git | Sí | Sí |
| Desplazarse hasta un elemento | — | SmartScroll |
| Regresión visual | — | Línea base + diferencia de píxeles |
| Verificación multi-dispositivo | — | Modo oscuro, horizontal, iPad |
| Verificación de accesibilidad | — | Renderizado de tipo dinámico |
| Verificación de localización | — | Multilingüe + RTL |
| Pellizcar / zoom | — | Sí |
Pro cuesta 12 EUR/mes. Obtén una licencia en Polar.sh, luego:
silbercueswift activate <YOUR-LICENSE-KEY>
58 Herramientas en 14 Categorías
Compilación (5 herramientas)
| Herramienta | Descripción |
|---|---|
build_sim | Compilar para iOS Simulator — devuelve errores estructurados + almacena en caché el ID del paquete y la ruta de la app |
build_run_sim | Compilar + iniciar + instalar + lanzar en una sola llamada — pipeline paralelo de 2 fases, ~9s más rápido que secuencial |
clean | Limpiar artefactos de compilación |
discover_projects | Buscar archivos .xcodeproj/.xcworkspace |
list_schemes | Listar esquemas disponibles |
Pruebas y Diagnóstico (4 herramientas)
| Herramienta | Descripción |
|---|---|
test_sim | Ejecutar pruebas + resumen estructurado de xcresult (aprobados/fallidos/duración) |
test_failures | Pruebas fallidas con mensajes de error, archivo:línea y capturas de pantalla de fallos |
test_coverage | Cobertura de código por archivo, ordenada y filtrable |
build_and_diagnose | Compilar + errores/advertencias estructurados desde xcresult |
Simulador (12 herramientas)
| Herramienta | Descripción |
|---|---|
list_sims | Listar simuladores disponibles |
boot_sim | Iniciar un simulador |
shutdown_sim | Apagar un simulador |
install_app | Instalar paquete .app |
launch_app | Lanzar app por ID de paquete |
terminate_app | Terminar app en ejecución |
clone_sim | Clonar un simulador existente |
erase_sim | Borrar contenido y ajustes del simulador |
delete_sim | Eliminar un simulador |
set_orientation | Rotar dispositivo (PORTRAIT, LANDSCAPE_LEFT, LANDSCAPE_RIGHT) vía WDA |
sim_status | Estado del simulador (iniciado/apagado, tipo de dispositivo, runtime) |
sim_inspect | Información detallada del simulador (ruta de datos, ruta de registros, UDID) |
Automatización de UI (16 herramientas)
Entrada nativa para gestos, WDA para consultas de elementos y alertas — sin Appium, sin Node.js, sin Python.
| Herramienta | Descripción | Latencia |
|---|---|---|
handle_alert | Aceptar, descartar o gestionar en lote alertas del sistema y de la aplicación | ~200ms |
find_element / find_elements | Encontrar elementos por ID de accesibilidad, predicado, cadena de clase. scroll: true se desplaza automáticamente hasta que el elemento aparece (SmartScroll — 3 estrategias de respaldo) | 31ms ( |
click_element | Tocar un elemento de la interfaz | ~75ms |
tap_coordinates | Tocar basado en coordenadas | ~16ms ( |
double_tap / long_press | Doble toque o pulsación larga en coordenadas | ~60ms / ~1000ms |
swipe | Deslizamiento direccional | ~250ms |
pinch | Acercar/alejar | ~400ms |
drag_and_drop | Arrastrar desde el origen al destino — de elemento a elemento, coordenadas o mixto. Valores predeterminados inteligentes para listas reordenables, tableros Kanban, controles deslizantes | ~1.3s |
navigate | Encontrar + tocar + estabilizar + captura de pantalla en 1 llamada — ahorra 3-4 idas y vueltas | ~380ms |
type_text / get_text | Escribir o leer de elementos | ~100-300ms |
get_source | Jerarquía de vista completa (JSON/XML) | ~31ms ( |
wda_status / wda_create_session | Verificación de salud de WDA y gestión de sesiones | ~50-100ms |
handle_alert — el gestor de alertas más inteligente
# Accept a single alert with smart defaults
handle_alert(action: "accept")
# Dismiss with a specific button label
handle_alert(action: "dismiss", button_label: "Not Now")
# Batch-accept ALL alerts after app launch (unique to SilbercueSwift)
handle_alert(action: "accept_all")
Búsqueda de alertas en 3 niveles — encuentra alertas en:
- Springboard — diálogos de permisos del sistema (Ubicación, Cámara, Seguimiento)
- ContactsUI — diálogo de "Acceso limitado" de Contactos en iOS 18+ (proceso separado)
- Aplicación activa — diálogos
UIAlertControllerdentro de la aplicación
Valores predeterminados inteligentes — sabe qué botón tocar:
- Aceptar: "Permitir" → "Permitir mientras se usa la aplicación" → "Aceptar" → "Continuar" → último botón
- Descartar: "No permitir" (maneja Unicode U+2019) → "Cancelar" → "Ahora no" → primer botón
Modo lote — accept_all / dismiss_all recorre múltiples alertas secuenciales en el servidor. Una sola ida y vuelta HTTP en lugar de N. Devuelve detalles de cada alerta gestionada.
Estas capacidades van más allá de lo que otros servidores MCP de iOS ofrecen actualmente.
Capturas de pantalla (1 herramienta)
| Herramienta | Latencia |
|---|---|
screenshot | Gratis: ~316ms / Pro: ~15ms |
Registros (4 herramientas)
| Herramienta | Descripción |
|---|---|
start_log_capture | Flujo os_log con filtrado inteligente — 3 modos: smart (predeterminado, filtrado por tema habilitado), app (flujo ajustado, auto-detectado), verbose (sin filtrar). Deduplica líneas repetitivas. |
stop_log_capture | Detener captura |
read_logs | Lectura filtrada por tema — predeterminado: solo aplicación y fallos. La respuesta incluye menú de temas con recuentos de líneas. Agregar temas mediante el parámetro include. |
wait_for_log | Esperar patrón regex con tiempo de espera — elimina trucos de sleep() |
Filtrado inteligente de registros — 4 capas, cero configuración
# Start capture (default: smart mode — broad stream, topic filtering enabled)
start_log_capture()
# Read logs — default shows only app logs + crashes + topic menu
read_logs()
# → --- 230 buffered, 42 shown [app, crashes] ---
# → Topics: app(35) crashes(2) | network(87) lifecycle(12) springboard(8) widgets(0) background(3) system(83)
# → Hint: include=["network"] to add SSL/TLS + background transfer logs
# → ---
# → [42 filtered lines]
# Agent sees network(87) and wants SSL details — one call:
read_logs(include: ["network"])
# Narrow stream for production monitoring:
start_log_capture(mode: "app")
# Bypass mode logic with explicit predicate:
start_log_capture(subsystem: "com.apple.SwiftUI")
4 capas de filtrado:
- Exclusión de ruido en el flujo — 15 procesos de ruido conocidos + exclusiones de subsistema/categoría eliminadas antes del almacenamiento en búfer. Filtrado en el servidor en
logd— reducción del 79% de E/S. - 3 modos de captura —
smart(predeterminado, flujo amplio para filtrado por tema),app(ajustado, ID de paquete y nombre de proceso auto-detectados),verbose(sin filtrar). - Filtrado por tema al leer —
read_logscategoriza cada línea almacenada en 8 temas (aplicación, fallos, red, ciclo de vida, springboard, widgets, fondo, sistema). Predeterminado muestra solo aplicación y fallos. El agente agrega temas según sea necesario — sin estado por llamada. - Deduplicación del búfer — 60 líneas de latido idénticas se convierten en 2: la línea misma +
... repeated 59x.
8 temas con menú optimizado para LLM:
| Tema | Coincidencias | Caso de uso |
|---|---|---|
app (siempre activo) | subsistema == bundleId O proceso == nombre de la aplicación | Tu aplicación: os_log, print(), NSLog() |
crashes (siempre activo) | registros de nivel de fallo | Fallos de cualquier proceso |
network | trustd, nsurlsessiond | Certificados SSL/TLS, transferencias en segundo plano |
lifecycle | runningboardd, com.apple.runningboard.* | Jetsam, presión de memoria, cierres de aplicaciones |
springboard | SpringBoard | Notificaciones push, estado de la aplicación |
widgets | chronod | Línea de tiempo de WidgetKit, presupuesto de actualización |
background | com.apple.xpc.activity.* | BGTaskScheduler, búsqueda en segundo plano |
system | todo lo demás | ADVERTENCIA: alto volumen |
Consola (3 herramientas)
| Herramienta | Descripción |
|---|---|
launch_app_console | Iniciar aplicación con captura de stdout/stderr |
read_app_console | Leer salida de consola |
stop_app_console | Detener captura de consola |
Git (5 herramientas)
| Herramienta | Descripción |
|---|---|
git_status / git_diff / git_log | Operaciones de lectura |
git_commit / git_branch | Operaciones de escritura |
Regresión visual (2 herramientas)
| Herramienta | Descripción |
|---|---|
save_visual_baseline | Guardar una captura de pantalla como línea base nombrada |
compare_visual | Comparar la pantalla actual contra la línea base — diferencia de píxeles + puntuación de coincidencia |
Multi-dispositivo (1 herramienta)
| Herramienta | Descripción |
|---|---|
multi_device_check | Ejecutar verificaciones visuales en múltiples simuladores (Modo oscuro, Horizontal, iPad) — devuelve puntuaciones de diseño |
Accesibilidad (1 herramienta) 
| Herramienta | Descripción |
|---|---|
accessibility_check | Renderizar pantallas en categorías de tamaño de contenido de Dynamic Type — detecta truncamiento y problemas de diseño |
Localización (1 herramienta) 
| Herramienta | Descripción |
|---|---|
localization_check | Renderizar pantallas en varios idiomas incluyendo RTL (árabe, hebreo) — detecta rupturas de diseño |
Automatización (2 herramientas)
| Herramienta | Descripción |
|---|---|
run_plan | Ejecutar un plan de automatización de UI de múltiples pasos en el servidor — decisiones adaptativas con respaldo de 4 niveles |
run_plan_decide | Reanudar un plan pausado con una decisión — para clientes sin muestreo MCP |
Sesión (1 herramienta)
| Herramienta | Descripción |
|---|---|
set_defaults | Establecer proyecto, esquema, simulador predeterminados — evita repetir parámetros |
Análisis de xcresult — La función estrella
El problema
Cada servidor MCP de Xcode devuelve salida xcodebuild sin procesar. Para una ejecución de pruebas, eso son 500+ líneas de ruido. Los agentes de IA no pueden extraer de manera confiable qué pruebas fallaron y por qué.
La solución
SilbercueSwift usa xcresulttool para analizar el paquete .xcresult — los mismos datos estructurados que usa el Navegador de pruebas de Xcode.
# One call, structured result
test_sim(project: "MyApp.xcodeproj", scheme: "MyApp")
→ Tests FAILED in 15.2s
12 total, 10 passed, 2 FAILED
FAIL: Login shows error message
LoginTests.swift:47: XCTAssertTrue failed
FAIL: Profile image loads
ProfileTests.swift:112: Expected non-nil value
Failure screenshots (2):
/tmp/ss-attachments/LoginTests_failure.png
/tmp/ss-attachments/ProfileTests_failure.png
Device: iPhone 16 Pro (18.2)
xcresult: /tmp/ss-test-1774607917.xcresult
El agente obtiene:
- Recuentos de aprobados/fallidos — visión general inmediata
- Mensajes de fallo con archivo:línea — accionables
- Capturas de pantalla de fallos — contexto visual (Claude es multimodal)
- Ruta de xcresult — reutilizable para
test_failuresotest_coverage
Análisis profundo de fallos
test_failures(xcresult_path: "/tmp/ss-test-*.xcresult", include_console: true)
→ FAIL: Login shows error message [LoginTests/testErrorMessage()]
LoginTests.swift:47: XCTAssertTrue failed
Screenshot: /tmp/ss-attachments/LoginTests_failure.png
Console:
[LoginService] Network timeout after 5.0s
[LoginService] Retrying with fallback URL...
✘ Test "Login shows error message" failed after 6.2s
Cobertura de código
test_coverage(project: "MyApp.xcodeproj", scheme: "MyApp", min_coverage: 80)
→ Overall coverage: 72.3%
Target: MyApp.app (74.1%)
0.0% AnalyticsService.swift
45.2% LoginViewModel.swift
67.8% ProfileManager.swift
Target: MyAppTests.xctest (62.0%)
...
Puntos de referencia
Medidos en M3 MacBook Pro, simulador de iOS 26.4. Todos los valores son mediana de 5 ejecuciones después de 2 calentamientos.
| Acción | iosef | XcodeBuildMCP | Appium-MCP | SS Gratis | SS Pro |
|---|---|---|---|---|---|
| Captura de pantalla | 83ms | 1127ms | 77ms | 316ms | 15ms |
| Encontrar elemento | 50ms | N/A | 76ms | 31ms | <1ms |
| Tocar (coordenadas) | 48ms | 235ms | 470ms | 16ms | 4ms |
| Deslizar | 262ms | 1284ms | 2685ms | ~250ms | ~250ms |
| Jerarquía de vista | 44ms | 259ms | 938ms | 31ms | 5ms |
| Navegar (1 llamada) | — | — | — | ~380ms | ~380ms |
| Doble toque | — | — | — | ~84ms | ~60ms |
| Arrastrar y soltar | — | solo coordenadas | — | ~1.3s | ~1.3s |
| Gestionar alerta | — | — | 118ms | ~200ms | ~200ms |
| Gestionar 3 alertas (lote) | — | — | 3 llamadas | ~800ms (1 llamada) | ~800ms (1 llamada) |
| Desplazarse a elemento | — | — | bucle de deslizamiento | — | Automático |
| Compilar (limpio) | — | 2501ms | — | 3188ms | 1800ms |
| Lista de simuladores | 12ms | 567ms | — | 15ms | 15ms |
| Inicio en frío | ~100ms | ~400ms | ~1000ms | ~50ms | ~50ms |
| Tamaño del binario | ~5MB | ~4MB | ~200MB | 8.5MB | 8.5MB |
Comparación con otros servidores MCP
Consulta la tabla de comparación de funciones anterior para un desglose detallado frente a XcodeBuildMCP, Appium-MCP e iosef. Los tres son proyectos excelentes que fueron pioneros en las herramientas MCP de iOS. SilbercueSwift combina todos sus conjuntos de funciones con una integración más profunda en un único binario nativo. El único inconveniente: SilbercueSwift es solo para iOS (sin Android, watchOS, tvOS ni visionOS).
Arquitectura
SilbercueSwift (8.5MB Swift binary)
├── MCP SDK (modelcontextprotocol/swift-sdk)
├── StdioTransport (JSON-RPC)
└── 58 Tools in 14 Categories
Build · Test · Simulator · Screenshot · UI Automation
Logs · Console · Visual Regression · Multi-Device
Accessibility · Localization · Automation · Git · Session
Sin Node.js. Sin Python. Sin servidor Appium. Sin Selenium. Un solo binario.
Requisitos
- macOS 13+
- Xcode 15+ (para
xcresulttoolysimctl) - Swift 6.0+ (para compilar desde el código fuente)
- WebDriverAgent instalado en el simulador (para herramientas de automatización de UI)
Licencia
El binario principal y las 49 herramientas gratuitas tienen licencia MIT — consulta LICENSE. Úsalas como quieras, comercialmente o de otro modo.
Las herramientas Pro (9 herramientas adicionales + internos más rápidos) requieren una licencia de pago. El código de validación de licencia (LicenseManager.swift) está incluido en el código fuente para transparencia — puedes ver exactamente qué verifica y cuándo.
Contribuciones
Se aceptan problemas y solicitudes de extracción. Consulta CONTRIBUTING.md para las pautas.
Privacidad
SilbercueSwift se ejecuta completamente en tu Mac y no recopila datos de usuario. Consulta PRIVACY.md para más detalles.
¿También automatizas un navegador? Public Browser es la misma idea para Chrome.