Lance App Manager
Lance es un agente que se ejecuta en su propia Mac en la nube y gestiona todo lo relacionado con App Store Connect en el proceso de publicación de una app para iOS. Se conecta a agentes de codificación como Claude Code y Codex a través de MCP y asume las partes que ellos no pueden hacer: crear apps en App Store Connect, configurar notificaciones/widgets, completar metadatos del listado, subir builds a TestFlight, enviar para revisión y responder a los comentarios de App Review. Al tener su propia Mac, también puede compilar, ejecutar y probar las apps de los usuarios y capturar capturas de pantalla.
Documentación
Lance MCP
Conecta herramientas de IA y agentes de codificación al App Manager de tu organización (el operador autónomo de App Store Connect de Lance) mediante el Model Context Protocol. Tu agente obtiene respuestas reales y acciones reales sobre tu cuenta real: listados, capturas de pantalla, compras dentro de la app, builds y reseñas.
Instalación
La vía más rápida es un solo comando que detecta tu cliente y configura el servidor:
npx add-mcp https://api.lance.app/mcp
Lance MCP es un servidor alojado sobre HTTP transmisible. No hay nada que ejecutar localmente:
https://api.lance.app/mcp
¿No eres de terminal? La página de instalación tiene configuración paso a paso para cada agente importante.
Configura tu cliente
Cursor
O añade el servidor a .cursor/mcp.json en tu proyecto (o ~/.cursor/mcp.json globalmente):
{
"mcpServers": {
"lance": {
"url": "https://api.lance.app/mcp"
}
}
}
Claude Desktop y claude.ai
No necesitas terminal: los servidores MCP remotos se añaden como conectores personalizados, no en claude_desktop_config.json. Ve a Configuración → Conectores, haz clic en Añadir → "Añadir conector personalizado", nómbralo Lance y pega la URL del endpoint, dejando vacíos los ajustes avanzados. Luego haz clic en Conectar e inicia sesión.
https://api.lance.app/mcp
- 1Abre Configuración → Conectores
En Claude Desktop o en claude.ai, abre Configuración, elige Conectores, luego haz clic en Añadir y selecciona "Añadir conector personalizado".

- 2Nómbralo Lance y pega la URL del servidor
Introduce "Lance" como nombre y pega la URL de abajo en el campo URL. Deja vacíos los ajustes avanzados y haz clic en Añadir.
https://api.lance.app/mcp
- 3Conecta e inicia sesión Haz clic en Conectar en el nuevo conector Lance e inicia sesión con tu cuenta de Lance en la ventana del navegador que se abre. OAuth se encarga del resto, así que no hay claves que copiar.
En los planes Team y Enterprise, un propietario de la organización añade primero el conector en Configuración de administrador → Conectores.
Claude Code
claude mcp add --transport http lance https://api.lance.app/mcp
Luego ejecuta /mcp dentro de Claude Code para iniciar sesión.
Codex
La forma más fácil: pega este prompt en Codex y él mismo instala Lance.
Install the Lance MCP server for me: https://api.lance.app/mcp (it authenticates with OAuth, no API keys to configure).
O ejecuta el comando tú mismo, o añádelo a ~/.codex/config.toml:
codex mcp add lance --url https://api.lance.app/mcp
[mcp_servers.lance]
url = "https://api.lance.app/mcp"
Windsurf y otros clientes MCP
Cualquier cliente que hable MCP sobre HTTP transmisible funciona con la misma configuración: la URL del endpoint y luego el inicio de sesión OAuth en el primer uso.
{
"mcpServers": {
"lance": {
"url": "https://api.lance.app/mcp"
}
}
}
Si tu cliente no puede abrir un navegador para iniciar sesión, pasa una clave API en su lugar (consulta Autenticación):
{
"mcpServers": {
"lance": {
"url": "https://api.lance.app/mcp",
"headers": {
"Authorization": "Bearer lance_sk_YOUR_KEY"
}
}
}
}
Autenticación
Lance usa OAuth, así que no hay nada que configurar. En el primer uso, tu cliente descubre el OAuth de Lance, abre un navegador y tú inicias sesión. Para clientes interactivos no hay claves que copiar ni cabeceras que establecer; la configuración es solo la URL.
Agentes sin interfaz y CI
Solo si tu agente no puede abrir un navegador: genera una clave API por usuario (lance_sk_…) en Configuración → Claves API y pásala como token de portador. La clave te identifica y actúa en nombre de tu organización, así que genera una por agente o máquina y podrás revocar cada una de forma independiente.
Authorization: Bearer lance_sk_YOUR_KEY
Herramientas disponibles
Las lecturas rápidas responden en segundos sin involucrar a un agente; las herramientas de delegación entregan el trabajo al operador, que se ejecuta de forma autónoma en segundo plano mientras tu agente sigue trabajando.
get_app_store_status
Lee el estado de envío en vivo de una app en App Store en segundos: el listado, la versión actual y exactamente lo que Apple aún requiere.
list_teams
Lista los equipos de App Store Connect conectados de la organización: nombres e ids de equipo, nunca credenciales.
list_bundles
Cada app que posee un equipo, directamente desde App Store Connect: bundle id, app id, nombre y SKU.
ask_app_manager
Delega una tarea o pregunta al operador en lenguaje natural: listados, compras dentro de la app, builds, reseñas. Devuelve inmediatamente y el trabajo se ejecuta en segundo plano en un Mac real.
check_app_manager_activity
Estado en vivo del operador y de cualquier subagente que haya generado, por conversación o a nivel de organización.
read_app_manager_conversation
Historial duradero y con marca de tiempo de cada conversación del operador. Filtrable por app e hilo, paginable.
generate_assets
Paquetes de iconos de app listos para producción a partir de una descripción en lenguaje natural: todos los tamaños de Apple y Android más los tamaños de marketing de la tienda. Gratis, y tarda unos 30 segundos.
create_artifact_slot
Un par de subida/descarga prefirmado para pasar un archivo en cualquier dirección (un .ipa de entrada, una clave APNs de salida).
get_asc_jwt
Un enlace de recuperación de corta duración para lecturas directas de la API de App Store Connect. El token bruto y el .p8 de la organización nunca entran en la conversación.
Seguridad
- Las credenciales del operador de tu organización (claves API de App Store Connect, archivos
.p8, sesiones de Apple) nunca cruzan el límite de MCP. Los agentes delegan el trabajo; el operador tiene las claves. - Las credenciales a nivel de app que tu app necesita legítimamente (claves APNs, perfiles de aprovisionamiento, secretos compartidos de compras dentro de la app) se entregan mediante ranuras de artefactos que expiran, nunca pegadas en el chat.
- Las claves API se almacenan con hash, limitadas a una organización y revocables en cualquier momento desde Configuración → Claves API. Eliminar a un miembro de la organización invalida sus claves inmediatamente.
- Los pasos genuinamente irreversibles, el inicio de sesión con Apple ID y el envío final, ocurren solo bajo solicitud explícita del propietario, nunca como efecto secundario.