Unleash

oficial

Servidor MCP para gestionar los feature flags de Unleash y automatizar las mejores prácticas.

¿Qué puedes hacer con Unleash MCP?

  • Buscar indicadores y proyectos — Pregunta qué indicadores de un proyecto tienen una etiqueta determinada, o enumera proyectos, segmentos, campos de contexto y entornos por nombre mediante search.
  • Inspeccionar un indicador — Consulta un proyecto, indicador, campo de contexto o segmento en detalle con inspect.
  • Comprobar la evaluación de un indicador — Pregunta si un usuario específico recibe un indicador en un entorno; la respuesta será habilitado, deshabilitado o desconocido mediante evaluate.
  • Lanzar o desactivar indicadores — Activa un indicador para determinadas audiencias, divídelas por porcentaje o plantilla, o desactívalo con release; si no existe, se crea.
  • Ejecutar pruebas A/B — Divide las audiencias entre control y tratamiento por proporción o en partes iguales, o detén la prueba mediante experiment.
  • Revisar cambios — Pregunta qué cambió, quién lo cambió y cuándo, durante un período de hasta 31 días, con audit.

Documentación

Servidor MCP de Unleash

Un servidor MCP que permite a los agentes de IA trabajar con Unleash como lo harías en la interfaz de Unleash: buscar flags, desplegarlos, comprobar quién los recibe y ver qué ha cambiado. Está en fase alfa y no está publicado en npm, así que se ejecuta desde el código fuente.

Herramientas

HerramientaDescripciónEjemplo de solicitud
searchBusca proyectos, flags, segmentos, campos de contexto, etiquetas, tipos de etiquetas, creadores de flags, plantillas de lanzamiento, tipos de eventos y entornos por nombre."¿Qué flags del proyecto checkout tienen la etiqueta team:payments?"
inspectLee un proyecto, flag, campo de contexto o segmento completo."Muéstrame todo sobre el flag new-checkout."
evaluateIndica si un flag está habilitado, deshabilitado o en estado desconocido para un contexto en un entorno."¿El usuario 42 recibe new-checkout en producción?"
releaseActiva un flag para audiencias, distribúyelo por valor o mediante una plantilla de lanzamiento, o desactívalo. Crea el flag si no existe. Abre una solicitud de cambio cuando el entorno lo requiera."Despliega new-checkout al 10 % de los usuarios en producción."
kill_switchActiva o desactiva un interruptor de apagado permanente, para todos o para las audiencias elegidas. Crea el interruptor si no existe. Abre una solicitud de cambio cuando el entorno lo requiera."Desactiva payments en producción."
experimentEjecuta una prueba A/B: asigna valores como control y tratamiento a las audiencias, por porcentaje o uno a cada una, o detenla. Crea el flag si falta. Abre una solicitud de cambio cuando el entorno lo requiera."Divide checkout al 50/50 entre control y el nuevo flujo."
manage_flagDefine flags, establece una dependencia principal, marca flags como completados, archívalos y restáuralos. No elimina flags."Archiva el flag old-banner."
configureCambia campos de contexto y sus valores permitidos, segmentos, tipos de etiquetas y etiquetas, plantillas de lanzamiento y proyectos."Crea un segmento beta-testers para userId 1, 2 y 3."
auditLee qué cambió, quién lo cambió y cuándo, durante un máximo de 31 días."¿Qué cambió ayer en producción?"
docsResponde preguntas sobre las prácticas de uso de feature flags y sobre Unleash a partir de la documentación actual de Unleash."¿Cómo debería limpiar los flags antiguos?"
send_feedbackInforma a Unleash de los casos en que el servidor no pudo ayudar. Primero te pregunta, salvo que UNLEASH_MCP_SEND_FEEDBACK decida.Ninguno: el agente lo llama por su cuenta.

Instalación local

Necesitas Node 24 o posterior y pnpm.

  1. Clona el repositorio y cambia a la rama v2:

    git clone https://github.com/Unleash/unleash-mcp.git
    cd unleash-mcp
    git checkout v2
    

    Esto obtiene el código fuente de v2.

  2. Instala las dependencias:

    pnpm install
    

    Node ejecuta directamente el código fuente de TypeScript, así que no hay ningún paso de compilación.

  3. En Unleash, crea un token de acceso personal en Profile > Personal API tokens. El servidor actúa con los permisos de ese usuario.

  4. Registra el servidor con tu cliente MCP. Para Claude Code:

    claude mcp add unleash \
      -e UNLEASH_BASE_URL=https://your-instance.getunleash.io \
      -e UNLEASH_PAT=user:your-personal-access-token \
      -- node /absolute/path/to/unleash-mcp/src/index.ts
    

    Esto añade a Claude Code un servidor stdio llamado unleash. Para los clientes configurados con JSON, como Claude Desktop, Cursor o VS Code, añade esto a sus servidores MCP:

    {
      "mcpServers": {
        "unleash": {
          "command": "node",
          "args": ["/absolute/path/to/unleash-mcp/src/index.ts"],
          "env": {
            "UNLEASH_BASE_URL": "https://your-instance.getunleash.io",
            "UNLEASH_PAT": "user:your-personal-access-token"
          }
        }
      }
    }
    
  5. Pídele a tu agente: "Enumera mis proyectos de Unleash". Si responde con tus proyectos, el servidor está en funcionamiento.

Configurar el servidor local

VariableObligatoriaDescripción
UNLEASH_BASE_URLSíURL de tu instancia de Unleash, como https://sandbox.getunleash.io/enterprise.
UNLEASH_PATSíToken de acceso personal que el servidor usa para llamar a Unleash.
UNLEASH_MCP_SEND_FEEDBACKNotrue envía informes sin preguntar; false excluye send_feedback. Si no se establece, se te pregunta al enviar el primer informe.
UNLEASH_FEEDBACK_URLNoInstancia de Unleash que recibe los informes de send_feedback. Si no se establece, se usa la instancia de Unleash (https://eu.app.unleash-hosted.com/hosted/).
UNLEASH_MCP_CONFIG_DIRNoDirectorio donde se guarda tu respuesta, feedback_consent.json. De forma predeterminada, se usa el directorio de configuración de tu plataforma.

send_feedback envía informes anónimos a Unleash cuando el servidor no pudo ayudar: un error de herramienta, una solicitud que ninguna herramienta admite o un resultado incorrecto. El informe indica la herramienta, el error y el cliente MCP en el que se ejecuta el agente. Di que sí para ayudarnos a corregir lo que no te funciona.

No se envía nada hasta que aceptes. El primer informe te lo pregunta a través de tu cliente MCP y tu respuesta se guarda en feedback_consent.json, así que solo se te pregunta una vez. El archivo se encuentra en un directorio unleash-mcp dentro de $XDG_CONFIG_HOME cuando está definido; de lo contrario, se encuentra en ~/Library/Application Support en macOS, %APPDATA% en Windows y ~/.config en Linux. Elimínalo para que se te vuelva a preguntar.

Si descartas la pregunta o tu cliente no puede mostrarla, los comentarios permanecen desactivados hasta la siguiente sesión. OpenCode, Gemini y Antigravity nunca la muestran, así que en esos casos los comentarios permanecen desactivados a menos que UNLEASH_MCP_SEND_FEEDBACK sea true.

Para evitar incluir secretos en la configuración de tu cliente, copia .env.example en .env, complétalo e inicia el servidor con node --env-file=.env /absolute/path/to/unleash-mcp/src/index.ts.

Conectarse al servidor remoto

Unleash Enterprise aloja este servidor mediante Streamable HTTP, así que no se ejecuta nada en tu máquina. Un administrador lo activa en Admin > Remote MCP Server; los informes de send_feedback se envían a menos que el administrador los desactive allí.

Registra el servidor con tu cliente MCP. Para Claude Code:

claude mcp add unleash https://your-instance.getunleash.io/api/admin/mcp --transport http

Para Codex, añade el servidor y luego inicia sesión:

codex mcp add unleash --url https://your-instance.getunleash.io/api/admin/mcp
codex mcp login unleash

El inicio de sesión abre el navegador para que inicies sesión en Unleash; Claude Code hace lo mismo la primera vez que se usa. A continuación, Unleash crea un token de acceso personal para el cliente, válido durante 24 horas, y el servidor actúa con tus permisos.

Cuando no sea posible iniciar sesión mediante el navegador, por ejemplo en CI, envía en su lugar tu propio token de acceso personal y no se iniciará sesión:

claude mcp add unleash https://your-instance.getunleash.io/api/admin/mcp \
  --transport http \
  --header "Authorization: Bearer user:your-personal-access-token"

Codex obtiene el token de una variable de entorno cuyo nombre se indica en su config.toml, como bearer_token_env_var en [mcp_servers.unleash].

Desarrollo