AI-Multimodal-Campaign-Architect
AI Multimodal Campaign Architect
Flujo de trabajo agentivo · Protocolo de contexto de modelo
Un flujo de trabajo MCP agentivo que planifica, redacta, ilustra y vocaliza una campaña de marketing completa — con un punto de control humano antes de la parte costosa.
Dale un solo mensaje — "Lanzar una línea audaz de zapatillas dirigida a la Generación Z" — y ejecuta un flujo agentivo de herramientas MCP que genera copia, un moodboard, una locución, una presentación tipo pitch y una imagen final de campaña, con barreras de seguridad automatizadas y un límite de presupuesto estricto en el camino.
Vea cómo funciona: https://ai-multimodal-campaign-architect-gl808c9v7-nibha-dongre.vercel.app/
Qué hace
Generar copia — Gemini produce un titular, texto del cuerpo, público objetivo, mensaje principal, un concepto visual detallado y un guion de locución de ~15 segundos a partir de un solo mensaje de campaña.
Distribuir en paralelo (
asyncio.gather, limitado por la llamada más lenta, no por su suma):Construir un moodboard desde Unsplash para validar la dirección visual de forma económica, antes de gastar en la generación de imágenes
Sintetizar una locución a partir del guion (gTTS)
Redactar una presentación tipo pitch — público objetivo, mensaje principal, CTA, justificación del diseño
Ejecutar verificaciones de barreras de seguridad: un pase basado en reglas (términos prohibidos, límites de longitud) y un pase basado en LLM (afirmaciones no verificables, alineación del tono)
Punto de control humano en el bucle — una persona revisa el moodboard y confirma (o anula) la dirección visual antes de que el flujo gaste algo en la generación de imágenes.
Generar la imagen final a través de Pollinations.ai, utilizando el concepto visual confirmado.
Autocrítica acotada — cualquier campo que falle una verificación de barreras de seguridad recibe exactamente una pasada de reescritura automatizada. Sin bucles de reintento, sin coste descontrolado; los fallos se registran para seguimiento manual.
Flujo
RECEIVE BRAND REQUIREMENT ──▶ GENERATE COPY ──┬──▶ BUILD MOODBOARD ─────┐
├──▶ GENERATE AUDIO ──────┤
├──▶ CREATE PITCH ────────┼──▶ HUMAN IN THE LOOP ──▶ GENERATE IMAGE
└──▶ RUN GUARDRAILS ──────┘
(parallel batch — asyncio.gather)Pila tecnológica
Capa | Pila |
Servidor MCP | Python, FastMCP, Pydantic (esquemas de herramientas tipadas) |
Copia / presentación / barreras de seguridad | API de Gemini ( |
Moodboard | API de Unsplash |
Generación de imágenes | Pollinations.ai (gratuito, no se requiere clave) |
Locución | gTTS |
Frontend | Next.js (App Router), TypeScript, Tailwind CSS |
Solo las llamadas a Gemini y Unsplash cuestan algo; ambas tienen niveles gratuitos generosos, y un límite de presupuesto por sesión impone un tope máximo independientemente (consulte Controles de coste y presupuesto).
Estructura del proyecto
.
├── server.py # MCP server — exposes each pipeline step as a typed tool
├── client.py # MCP transport client
├── orchestrator.py # Pipeline DAG: sequencing, parallel fan-out, budget enforcement
├── run_demo.py # Runs the 4 showcase campaigns end-to-end, writes campaign_outputs/
├── requirements.txt
├── .env.example
│
├── app/ # Next.js app router pages
├── components/ # DemoGrid, DemoModal, PipelineDiagram, ByokPanel, etc.
├── data/
│ ├── demos.ts # Auto-generated by scripts/build-demo-data.mjs — do not hand-edit
│ └── features.ts
├── public/
│ ├── demo.gif
│ └── demos/ # Campaign assets copied in at build time
├── scripts/
│ └── build-demo-data.mjs # Reads campaign_outputs/, populates data/demos.ts + public/demos/
└── package.jsonAjuste este árbol si su repositorio divide el backend de Python y el frontend de Next.js en subcarpetas separadas en lugar de una raíz compartida.
Herramientas MCP expuestas
Herramienta | Propósito | Coste |
| Titular, texto del cuerpo, concepto visual, guion de locución — la fuente de contexto de la que depende cualquier otra herramienta | Gemini (pequeño) |
| Búsqueda en Unsplash de imágenes de referencia — una forma económica de validar la dirección antes de la generación de imágenes de pago | Gratuito |
| Imagen final de campaña a partir de un concepto visual confirmado | Gratuito (Pollinations.ai) |
| Locución de texto a voz a partir del guion de la campaña | Gratuito (gTTS) |
| Público objetivo, mensaje principal, CTA, justificación del diseño | Gemini (pequeño) |
| Regenera un solo campo (titular / texto del cuerpo / guion de audio) de forma aislada, manteniendo todo lo demás fijo | Gemini (pequeño) |
| Cribado basado en reglas: términos prohibidos, límites de longitud del titular/guion | Gratuito |
| Cribado basado en el modelo: afirmaciones no verificables, alineación del tono con el contexto de la marca | Gemini (pequeño) |
| Recuperación estilo RAG de la voz/directrices de la marca para fundamentar la generación de copia | Gratuito (simulado — la búsqueda de incrustaciones real es una extensión planificada) |
Controles de coste y presupuesto
CampaignOrchestrator rastrea el coste real informado por llamada y aplica un toque máximo duro por sesión (budget_cap_usd, por defecto $0.50). Una vez alcanzado el límite, las llamadas de pago posteriores se rechazan directamente; el flujo no se bloquea, simplemente deja de gastar. Las herramientas gratuitas (moodboard, audio, barreras de seguridad basadas en reglas) nunca se ven bloqueadas por el límite.
Primeros pasos
Requisitos previos
1. Generar datos de campaña (backend Python)
git clone https://github.com/YOUR_USERNAME/YOUR_REPO.git
cd YOUR_REPO
pip install -r requirements.txt
cp .env.example .env
# fill in GEMINI_API_KEY and UNSPLASH_ACCESS_KEY in .envEn un terminal, inicie el servidor MCP:
python server.pyEn otro, ejecute las campañas de demostración:
python run_demo.py # all campaigns
python run_demo.py --campaign 1 # just oneEsto escribe la salida de cada campaña en campaign_outputs/campaign_N/.
2. Construir y ejecutar el frontend
npm install
npm run build:demo-data # reads campaign_outputs/, populates data/demos.ts + public/demos/
npm run devAbra http://localhost:3000.
Ejecutar el flujo (BYOK)
El sitio desplegado incluye campañas de demostración pregeneradas integradas en el momento de la compilación; no se ejecuta ningún backend en producción. Cualquiera puede clonar este repositorio y ejecutar el mismo flujo con sus propias claves de API siguiendo los pasos anteriores; no se requiere cuenta de pago, tarjeta de crédito ni proceso de aprobación para ninguna de las claves.
Despliegue
Solo es necesario desplegar el frontend de Next.js; el backend de Python es una herramienta de generación local, no una dependencia en tiempo de ejecución del sitio desplegado. Consulte components/ByokPanel.tsx para la versión dentro de la aplicación de las instrucciones para ejecutarlo usted mismo.
Desplegado en Vercel: importe el repositorio, el framework se detecta automáticamente como Next.js, no se requieren variables de entorno para la compilación del frontend.
Licencia
Autor
Construido por Nibha S Dongre — un flujo MCP agentivo, de principio a fin.
[Ver en GitHub →](https://github.com/nibhasdongre/AI-Multimodal-Campaign-Architect)
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Manage ad campaigns across Google, Meta, LinkedIn, Reddit, TikTok, and more via AI.
Manage ad campaigns across Google, Meta, LinkedIn, Reddit, TikTok, and more via AI.
OpenAI Ads MCP for ChatGPT Ads campaigns, creatives, audiences, insights, and conversions.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/nibhasdongre/AI-Multimodal-Campaign-Architect'
If you have feedback or need assistance with the MCP directory API, please join our Discord server