Crear mi primera campaña
Menú de la documentación
API

Servidor MCP

Conecta Claude, Cursor o ChatGPT a BannerMotion: 10 herramientas para generar, corregir, ver y exportar banners.

BannerMotion es también un servidor MCP (Model Context Protocol) remoto: un asistente de IA puede generar, corregir, ver, adaptar y exportar banners en tu nombre, con los mismos permisos y créditos que tienes en la app. El transporte es Streamable HTTP y la dirección es:

https://app.bannermotion.com/mcp
Nota. Es la dirección que declara nuestra documentación para el servidor. [PLACEHOLDER: confirmar el dominio definitivo; más adelante también estará en mcp.bannermotion.com]

Conectar un cliente

  • Claude.ai (web y escritorio): en «Settings → Connectors → Add custom connector» pega la dirección y pulsa Connect. Se abre BannerMotion para elegir el workspace. En planes de equipo, un administrador agrega el conector para la organización.
  • Claude Code: claude mcp add --transport http bannermotion https://app.bannermotion.com/mcp y, dentro de Claude Code, /mcp → bannermotion → Authenticate.
  • Cursor: copia el JSON de la derecha a ~/.cursor/mcp.json (o .cursor/mcp.json del proyecto) y conecta desde «Settings → MCP».
  • ChatGPT: «Settings → Apps & Connectors → Advanced → Developer mode → Create», con la dirección y autenticación OAuth.

Autenticación

  • OAuth 2.1 (lo recomendado): el cliente se registra solo, abre la pantalla «Conectar una aplicación», eliges el workspace y apruebas. Usa PKCE. El acceso dura 1 hora y se renueva solo (el refresco dura 30 días). La conexión aparece en tu cuenta como una sesión «MCP · cliente» y se desconecta cerrándola. Si el workspace exige verificación en dos pasos, actívala antes de conectar.
  • Clave de API bm_live_… en Authorization: Bearer …. Sus permisos limitan las herramientas. Las claves bm_test_… no sirven con MCP.
Claude Code con clave de API
claude mcp add --transport http bannermotion https://app.bannermotion.com/mcp \
  --header "Authorization: Bearer $BM_API_KEY"

Las 10 herramientas

HerramientaQué hacePermiso de la clave
list_campaigns
Lista las campañas del workspace, con tamaños, idiomas y piezas.
read
list_banners
Lista los conceptos de una campaña, con sus piezas y el estado de aprobación.
read
generate_banner
Genera un concepto desde un pedido en lenguaje natural. Devuelve el trabajo; con wait_seconds espera a que termine. Gasta créditos.
generate
get_job
Estado de un trabajo (en cola, en curso, terminado o fallido), con espera opcional.
read
edit_banner
Corrige un concepto con una instrucción, opcionalmente solo en algunos tamaños. Gasta créditos.
generate
preview_banner
Una imagen de un cuadro y un enlace firmado (1 hora) para ver la animación completa.
read
add_sizes
Adapta un concepto a tamaños nuevos. Gasta créditos por tamaño.
generate
export_banners
Empaqueta una campaña para una plataforma y devuelve enlaces de descarga firmados (1 hora).
export
get_export
Estado de una exportación y, si está lista, un enlace de descarga nuevo.
export
get_credit_balance
Saldo, plan, renovación y costo de cada operación por modelo.
read

El flujo típico es generate_banner → get_job hasta que termine → preview_banner → edit_banner o add_sizes → export_banners → compartir el enlace de descarga. Son 10 herramientas; las de solo lectura están marcadas como tales para el cliente.

Las reglas son las de la app

  • Si el workspace exige aprobación antes de exportar, o falta la URL de destino (clickTag), la herramienta lo dice y no exporta.
  • confirm_unapproved (exportar piezas sin aprobar, con marca de agua) solo funciona si te conectaste por OAuth con rol Admin o Propietario; con una clave de API siempre da forbidden.
  • Los errores vuelven como texto para el asistente: una pista, el código entre corchetes y el mensaje del servidor.
  • Cada llamada cuenta para el límite de 60 peticiones por minuto. [PLACEHOLDER: confirmar el valor en producción]
Nota. Planes que incluyen el servidor MCP: [PLACEHOLDER: por confirmar]. La API REST y los webhooks están en Equipo, Agencia y Empresa.
¿Te sirvió esta página?