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

Añadir a 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
  1. 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". Claude settings on the Connectors tab with the Add menu open, showing the "Add custom connector" option
  2. 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
    
    Claude's Add custom connector dialog with the name Lance and the Lance MCP server URL filled in, and Advanced settings left empty
  3. 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.