Meta Ads CLI Oficial
Primer conector oficial del marco Ads AI Connectors. Incluye MCP server remoto y CLI de línea de comandos con 9 funciones para campañas, reportes, catálogos y pixel.
El 29 de abril de 2026, Meta publicó Ads CLI — el primer conector oficial dentro del marco "Ads AI Connectors". Es la primera vez que Meta entrega un MCP server propio + una herramienta CLI de línea de comandos diseñada específicamente para que agentes (Claude, Codex, etc.) operen Meta Ads de forma estructurada.
Hasta hace poco, controlar Meta Ads desde agentes requería scraping del Ads Manager o el SDK no oficial. Ahora hay endpoint oficial — https://mcp.facebook.com/ads — y un CLI que cualquier agente puede invocar. Esta nota cubre los 9 comandos del CLI, las 4 superpotencias que habilita, y los gotchas que la mayoría descubre tarde.
Las dos piezas (no se confundan)
Pieza 1: MCP server remoto
URL: https://mcp.facebook.com/ads
Es endpoint MCP standard. Cualquier cliente MCP-compatible se conecta. Para Claude:
claude.ai → Settings → Connectors → Add → URL del endpoint → autorizás con tu cuenta Meta Business.
Una vez conectado, Claude tiene acceso a tools como:
meta_ads_create_campaignmeta_ads_list_campaignsmeta_ads_get_insightsmeta_ads_pause_campaign- ...y unas 40 más.
Esto te deja decir cosas como "lista mis campaigns activas" y Claude lo ejecuta vía el MCP.
Pieza 2: Ads CLI
CLI de línea de comandos que se instala local:
npm install -g @meta/ads-cli
meta-ads login
Después tenés meta-ads como comando disponible. Lo importante: el CLI se conecta al mismo backend que el MCP, pero te deja automatizar desde scripts. Combiná con cron, GitHub Actions, etc.
Los 9 comandos del CLI (verbatim)
Los 9 comandos principales según docs:
1. meta-ads campaigns list
Lista campaigns con filtros (--status active, --account-id N, --limit M).
2. meta-ads campaign create
Crea una campaign desde un JSON spec.
meta-ads campaign create --spec ./campaigns/q2-launch.json --status PAUSED
--status PAUSED es el default por seguridad — crea pausada para que vos confirmes antes de gastar.
3. meta-ads adset create
Crea ad sets dentro de una campaign.
4. meta-ads ad create
Crea ads dentro de un ad set, con creative.
5. meta-ads insights
Pulls performance data.
meta-ads insights --campaign C123 --days 7 --metrics impressions,clicks,ctr,cpc,conversions,spend
Output en JSON o table format.
6. meta-ads catalog upload
Sube productos al Commerce Manager. Para e-commerce este es el comando clave.
meta-ads catalog upload --feed-id F456 --csv ./products.csv
7. meta-ads pixel events
Lista eventos enviados al Pixel últimas N horas. Para debuggear tracking.
8. meta-ads audience create
Crea custom audiences (desde archivo, desde pixel, lookalike).
9. meta-ads pause
Pausa campaigns/adsets/ads en bulk.
meta-ads pause --campaign-id C123
meta-ads pause --all-paused-old --days 30 # pausa campaigns paused +30 días
Las 4 superpotencias
Superpotencia 1: Campañas desde brief (siempre en pausa)
Le pasás a Claude un brief en español:
Brief: lanzamiento curso "Marketing con IA"
Audiencia: marketers 25-45, LatAm
Objetivo: registrations al webinar gratuito
Budget: $300 USD/semana
3 creatives ya cargados en mi cuenta (IDs: creative_a, b, c)
Claude:
- Define estructura de campaign (CBO o ABO, según volumen).
- Crea 3 ad sets con segmentaciones distintas.
- Asigna los 3 creatives.
- Configura tracking events (pixel, offline conversions).
- Lanza con
--status PAUSED.
Tiempo: 4-8 minutos. Tu rol: revisar y activar.
Superpotencia 2: Reportes diarios automáticos
Con cron + el CLI:
# Cada día a las 9am
0 9 * * * meta-ads insights --account-id ACT_123 --days 1 \
--metrics spend,conversions,cpa,ctr \
--output /reports/$(date +%Y%m%d).json
Y un agente que cada día lee el reporte y te manda Telegram con resumen + alertas:
📊 Reporte diario Meta Ads
Spend: $342 (presupuesto $400 ✓)
Conversiones: 28 (vs. promedio 25 ✓)
CPA: $12.20 (vs. target $15 ✓)
🚨 Alert: ad_x tiene CTR <0.5%, considerar pausar.
Superpotencia 3: Catálogos auto-actualizados
Si vendés en Shopify y querés el catálogo sincronizado con Meta Commerce:
- Cron diaria exporta el CSV de productos de Shopify.
meta-ads catalog uploadlo sube a Meta.- Tus dynamic ads tienen siempre el catálogo actualizado.
Sin esto, terminás con anuncios que muestran productos sin stock o precios viejos.
Superpotencia 4: Pixel debugging
Tu desarrollador puso el pixel pero "no tracking events":
meta-ads pixel events --pixel-id P789 --hours 1
Output: eventos recibidos en la última hora, fuente, parámetros. Si está vacío, sabés que el pixel no está disparando. Si está poblado pero los eventos están mal armados, también lo ves.
Esto reemplaza hora de debug con browser DevTools por 30 segundos en terminal.
Setup paso a paso
1. Cuenta y permisos
Necesitás cuenta Meta Business con rol Admin o Advertiser en el ad account. Sin permisos correctos, el login del CLI falla.
2. App Meta para autenticación
Crear una "Meta Business App" en developers.facebook.com:
- Type: Business.
- Permissions:
ads_management,ads_read,business_management. - Generar System User token con esos permissions.
El token va en una env var:
export META_ADS_TOKEN=EAAxxx...
3. Instalación del CLI
npm install -g @meta/ads-cli
meta-ads --version
4. Conexión del MCP
claude.ai → Connectors → Meta Ads MCP → Autorizá.
5. Test rápido
meta-ads campaigns list --status active --limit 5
Si lista, todo OK.
Gotchas
Gotcha 1: Sandbox vs. producción
El CLI por default conecta a producción. Si querés probar sin gastar, usá:
meta-ads --sandbox campaigns list
El sandbox es un environment de Meta para testing. Cuidado: no todas las features del prod están en sandbox.
Gotcha 2: Rate limits
Meta tiene rate limits agresivos. El CLI hace retry con backoff, pero si hacés muchas operaciones rápidas (ej: subir 10.000 productos al catálogo), te puede tirar 429.
Solución: --rate-limit slow flag que añade pausas entre requests.
Gotcha 3: La pausa por default no es opcional
El --status PAUSED que crea campañas pausadas no se puede saltear desde el CLI. Es decisión de diseño de Meta para evitar agentes "loose cannons" que disparen spend sin control humano.
Si querés activar al toque, hacés:
meta-ads campaign create --spec X.json
meta-ads campaign activate --id <id-recién-creado>
Dos pasos. La activación tiene log separado para auditoría.
Gotcha 4: Custom audiences requieren prep
Subir audiencia desde CSV requiere que los emails/teléfonos estén hasheados SHA-256 y normalizados (lowercase, sin espacios). El CLI tiene helper:
meta-ads audience prepare --input clients.csv --output hashed.csv
Si subís sin hashear, Meta acepta el archivo pero matchea 0%.
Combinación con otras herramientas
El Ads CLI no vive solo. Las combinaciones que más rinden:
- Con Andromeda — Andromeda genera el brief estructurado, CLI lo crea en Meta.
- Con Cloud Ads Flow — el Flow corre cada lunes, llama al CLI por debajo.
- Con Higgsfield MCP — Higgsfield genera los creativos, CLI los sube y crea ads.
- Con Claude Ads (200+ checks) — Claude Ads audita lo creado antes de activar.
Costos
El CLI en sí es gratis. Lo que cuesta es el ad spend que dispara. Para que sea claro:
- Acceso al CLI: $0.
- Acceso al MCP server: $0.
- Operaciones (create, list, insights): $0 — no cobran por API calls.
- Lo que cobran: lo que gastes en ads activos.
Eso es lo que diferencia esto de productos third-party. Meta lo hace gratis porque les conviene que vos gastes más en ads. Es win-win.
Conclusión
El Ads CLI oficial es la pieza que faltaba en el ecosistema de agentes de marketing. Antes, controlar Meta Ads programmatic era frágil (scraping) o caro (SDK con curva de aprendizaje). Ahora es un comando estándar.
Si corrés ads para un negocio, instalá el CLI hoy y los 9 comandos vuelven el setup de campañas algo que un agente puede hacer mientras vos te ocupás de otra cosa. La primera vez tarda 1-2 horas (auth, permisos, app de Meta). Después es rutina.
Tags: meta-ads-cli, facebook-ads, instagram-ads, conector-oficial, ads-ai-connectors