Por qué los agentes (y sus personas) eligen Hermoso: un solo conector es una tienda única para más de 100 modelos de imagen, video, voz y escritura: Seedance, Veo, Kling, MiniMax H3 y Gemini Omni para video; Nano Banana, Imagen, Flux, Seedream y GPT Image para imágenes fijas; además de voces premium y modelos de escritura de clase Claude, Gemini y GPT, todo en un mismo medidor de créditos, sin claves de API ni cuentas de cada proveedor que mantener. Y más allá de los modelos, el mismo conector cubre todo el flujo publicitario: investigación de la competencia en las bibliotecas de anuncios de Meta, Google y LinkedIn, planificación creativa, renders de marca terminados, posproducción, puntuación, publicación y gestión de campañas. Los costos exactos por render se publican en hermoso_capabilities, así que un agente bien comportado puede darte un número antes de gastar nada.
Hermoso es el MCP de marketing que ejecuta todo el ciclo publicitario. La mayoría de los MCP de marketing solo gestionan campañas; Hermoso también crea y publica el anuncio. Conéctalo a tu agente e investiga, crea, publica y gestiona anuncios terminados directamente desde tus prompts, con 922+ herramientas, tu contexto de marca guardado y tus créditos. Instálalo desde npm (npm install -g hermoso). Es de código abierto en github.com/hermoso-ai/hermoso.
Conexión con un clic: Abrir en ChatGPT · Añadir a Cursor · Instalar en VS Code · Claude Code: claude plugin marketplace add hermoso-ai/hermoso && claude plugin install hermoso@hermoso (Codex, Gemini CLI y Cursor: un comando cada uno, en la configuración de arriba) · Claude.ai: pega https://app.hermoso.ai/mcp en Ajustes → Conectores · Meta Muse: un mensaje en el chat lo configura, ver Hermoso en Muse. Los agentes pueden descubrir automáticamente la tarjeta del servidor en /.well-known/mcp.json. También aparece en el registro oficial de MCP (io.github.hermoso-ai/hermoso), en Smithery y en Glama.
¿Prefieres el estudio? Todo lo que hacen las herramientas también vive en la app web, en app.hermoso.ai.
Tres cosas que escribir una vez conectado
Son frases normales, no un DSL. El agente elige las herramientas; tú apruebas el gasto.
- Investigar. “¿Quiénes son los tres competidores más cercanos de
oatly.comy cuáles son sus anuncios de Meta con más tiempo activos? Dime qué gancho se repite.” Esto recorrefind_competitors→pull_competitor_ads→mine_angles. - Crear. “Hazme un anuncio de video UGC 9:16 para mi marca con ese gancho, con mi foto real del producto y los subtítulos incrustados.” Esto recorre
get_brand→plan_ad→render_ad, y devuelve la URL del mp4 terminado. - Publicar. “Programa el anuncio para Instagram y TikTok el martes a las 9am, y crea alrededor de él una campaña de Meta pausada, dirigida a EE. UU. con $30 al día.” Esto recorre
schedule_post→create_meta_campaign→create_meta_ad.
Las herramientas, por tarea
Las 922+ herramientas están en un solo servidor con OAuth. Llámalas desde ChatGPT, Claude, Claude Desktop, Codex, Cursor, Cline, OpenClaw, Hermes, Grok Bot o cualquier otro cliente MCP. Cada una devuelve una URL de recurso duradera o un resultado estructurado, no prosa que el modelo tenga que volver a interpretar.
¿Buscas la lista completa? Está en la referencia de herramientas, con el esquema de parámetros real de cada herramienta y el JSON legible por máquina al lado. Esa referencia está generada: se construye ejecutando el servidor MCP que está en producción y leyendo tools/list a través de un transporte real, así que es la superficie exacta que recibe tu cliente. Las categorías de abajo son un recorrido escrito a mano por las herramientas que conviene conocer por nombre. Si ambas cosas no coinciden, confía en la referencia. Documentación completa para desarrolladores: hermoso.ai/docs.
Investigación y espionaje de anuncios: find_competitors, competitor_teardown, pull_competitor_ads, research_ads, mine_angles, score_ad, check_ad_policy, analyze_video; bibliotecas de anuncios search_meta_ads, search_google_ads, search_linkedin_ads; redes orgánicas search_tiktok, search_instagram, search_youtube, search_reddit, search_threads, search_threads_keyword; fetch_social_data; playbooks creativos list_skills, get_skill, save_skill.
Crea anuncios terminados: marca draft_brand, get_brand, update_brand, use_brand, list_brands; planificación plan_ad, plan_variations; render render_ad, generate_image, generate_video, generate_avatar, generate_voice, generate_text, make_template_ad (formatos nativos de anuncio en HTML que se renderizan directamente, así que el tipo sale con píxeles exactos), make_explainer, product_sizzle, make_thumbnail; editar y terminar remix_static, recast_motion, reframe_video, upscale_video, dub_video, change_voice, finish_video, fix_beat, post_edit, stitch_video, clip_video; recursos list_product_photos, set_product_image, list_library, fetch_asset, upload_file.
Publica y programa en tus canales: post_to_meta (Facebook / Instagram / Threads), post_to_tiktok, post_to_youtube, schedule_post (una sola cola para Facebook, Instagram, Threads, TikTok, YouTube, X, LinkedIn, Pinterest, Bluesky, Telegram y Google Business Profile), list_scheduled, cancel_scheduled, manage_meta_post, update_youtube_video, upload_meta_asset, list_meta_pages, youtube_channel, tiktok_account, list_tiktok_videos. YouTube va más allá de la subida: list_youtube_videos, update_youtube_video, set_youtube_thumbnail (pone una miniatura de Hermoso en un video subido; es la palanca más grande para el clic, y YouTube si no elige un fotograma al azar) y youtube_video_insights (vistas, tiempo de reproducción, porcentaje medio visto, suscriptores ganados). Interacción: list_meta_comments, reply_to_meta_comment, moderate_meta_comment, list_threads_replies, reply_to_thread, list_youtube_comments, reply_to_youtube_comment. X / Twitter: post_to_x (texto, imagen, video, respuestas, posts citados, encuestas e hilos completos; 280 caracteres en una cuenta normal y hasta 25,000 en una con X Premium, leído de la propia cuenta y no supuesto, y nunca truncado), post_x_article (el Artículo de formato largo de X, escrito en Markdown, con sus títulos, listas, citas, bloques de código y tablas conservados), edit_x_post (reescribe un post que ya publicaste, dentro de la hora que permite X), delete_x_post, x_post_metrics y x_post_insights (impresiones, me gusta, reposts, respuestas, citas, guardados), x_post_insights_historical (las mismas cifras de anunciante en cualquier rango de fechas, mientras que x_post_insights solo ve las últimas 28 horas), x_mentions. X es el único conector que cobra créditos por llamada a la API, porque X nos cobra por cada solicitud, y un post que contiene un enlace cuesta unas 13× lo que uno sin enlace; tu agente recibe el precio antes de publicar. LinkedIn: list_linkedin_pages, post_to_linkedin_page, post_to_linkedin, manage_linkedin_post, linkedin_page_analytics (rendimiento orgánico de la Página: seguidores y ganancias de seguidores, visitas a la Página, e impresiones, clics y interacción de los posts, para el total de la Página o por post). La publicación en LinkedIn va a las Páginas de empresa que marques. Tu perfil personal también está disponible, pero permanece apagado hasta que lo compartas explícitamente. Pinterest: list_pinterest_boards, create_pinterest_board, post_to_pinterest (Pins de imagen o video en un tablero que elijas). Threads va más allá de publicar: list_threads_posts, list_threads_replies, reply_to_thread, hide_thread_reply, delete_thread, list_threads_mentions, threads_insights.
Lee y responde los mensajes directos. list_inbox reúne en una sola lista todo lo que alguien le dijo a la marca: comentarios de Facebook e Instagram, respuestas y menciones de Threads, comentarios de YouTube y Reddit, reseñas de Google, respuestas de Bluesky y menciones de X, además de mensajes directos en Messenger, Instagram Direct, X, Bluesky y Telegram. reply_to_inbox_item responde a cualquiera de ellos por id y lo envía al canal correcto por ti, así que el agente nunca tiene que saber qué herramienta de respuesta usa cada plataforma. Por canal, cuando quieras el hilo completo y no solo la línea más reciente: list_meta_conversations, read_meta_conversation, reply_to_meta_message; list_x_dms, send_x_dm; list_bluesky_convos, read_bluesky_dm, send_bluesky_dm, mark_bluesky_convo_read; list_telegram_dms, list_telegram_chats, post_to_telegram; y en WhatsApp send_whatsapp_message, send_whatsapp_broadcast, list_whatsapp_templates, create_whatsapp_template. instagram_profile convierte un @handle de Instagram en el id numérico de cuenta que Meta realmente pide. Lo que permite cada plataforma es distinto, y Hermoso te dice con qué regla te enfrentas en lugar de dejar que lo descubras por un rechazo: Meta permite responder dentro de 24 horas desde que la persona escribió, y esa ventana se comprueba gratis antes de enviar nada; Telegram es una ventana móvil de 24 horas y no una bandeja de entrada, porque la Bot API no publica ningún endpoint de historial; X conserva 30 días de mensajes directos y cobra por cada mensaje leído. WhatsApp merece atención aparte, porque responder ahí no es una respuesta de bandeja: Hermoso envía por WhatsApp con send_whatsapp_message, ya sea una plantilla aprobada por Meta para abrir una conversación o una respuesta libre dentro de la ventana de atención al cliente de 24 horas de Meta, y te pide que confirmes el texto exacto y el número exacto antes, porque llega a un teléfono real y Meta le cobra al negocio por la conversación. Meta tampoco publica ningún endpoint de historial de WhatsApp, así que una conversación anterior a tu conexión no se puede recuperar a ningún precio. LinkedIn y Threads no publican una API de mensajes directos utilizable, así que ninguno de los dos se ofrece.
Envía un mensaje de WhatsApp, o difunde a toda la lista. send_whatsapp_broadcast lleva una plantilla aprobada a una lista de clientes, a un segmento o a un lanzamiento, y rellena los valores {{1}} y {{2}} de cada persona mientras avanza, así que mil personas reciben un mensaje que las nombra en lugar del mismo envío masivo mil veces. Meta no publica un endpoint masivo, así que es un envío escalonado de un mensaje por destinatario que se ejecuta como un trabajo en cola que consultas, no como una llamada que espera: los números duplicados se eliminan antes de enviar nada, un número que Meta no puede usar se rechaza y se indica por su nombre en lugar de descartarlo en silencio, y cada destinatario lleva su propio resultado, así que un fallo parcial se informa como fallo parcial y nunca como éxito. Ejecútalo primero con dryRun: eso no cuesta nada, no envía nada, e informa el número real de destinatarios, la categoría actual de la plantilla, lo que Meta cobrará por ella, y si la lista cabe dentro del límite de mensajes de 24 horas en movimiento de tu portafolio comercial. Meta te cobra directamente los mensajes, por mensaje, a sus propias tarifas por país, así que una difusión no gasta créditos de Hermoso. Dos reglas ahí son de Meta y no nuestras, y ambas son permanentes: una difusión siempre es una plantilla aprobada, porque el texto libre solo es legal dentro de la ventana de 24 horas que se abre cuando esa persona te escribe primero; y WhatsApp exige que el destinatario haya aceptado recibir mensajes, algo que la API no verifica y que sigue siendo responsabilidad del negocio.
Un solo calendario de contenido para todos los canales: schedule_post pone en cola un render terminado para uno o varios canales a una hora elegida, con textos por canal; list_scheduled lee lo que está en cola y lo que ya se disparó, con los resultados por canal; cancel_scheduled retira un post antes de que salga. En el estudio, la misma cola es un calendario real con vistas de mes, semana y lista, arrastras un post para reprogramarlo, editas o duplicas cualquier entrada, y tienes franjas horarias fijas en las que puedes colocar trabajo. Hermoso publica a la hora fijada; no hace falta tener nada abierto.
Gestiona campañas de anuncios de Meta: create_meta_campaign, create_meta_adset, create_meta_ad, find_meta_audiences, list_meta_ads, meta_insights, meta_page_insights, meta_post_insights, update_meta_object, set_meta_campaign_status, delete_meta_object. Los objetos se crean pausados, y cada gasto y cada borrado requiere confirmación. Antes de comprometer un presupuesto: preview_meta_ad renderiza el anuncio real por ubicación como un enlace que puedes revisar, y estimate_meta_reach dice cuánta gente alcanza de verdad una segmentación. Audiencias: list_meta_audiences y create_meta_audience crean retargeting con píxel web, audiencias de interacción con la Página y de Instagram, y lookalikes, y crear una no cuesta nada. meta_insights desglosa el rendimiento por edad, género, ubicación y país. La página de MCP de Facebook Ads recorre todas las herramientas de Meta y la segmentación que exponen.
Gestiona campañas de Google Ads: create_google_ads_campaign, create_google_ads_ad_group, create_google_ads_ad, add_google_ads_keywords, set_google_ads_budget, set_google_ads_bidding, set_google_ads_targeting, set_google_ads_status, find_google_ads_locations, upload_google_ads_asset, list_google_ads_campaigns, google_ads_report (GAQL). Todo el árbol se construye en una sola operación atómica y luego se lee de vuelta desde Google antes de que el agente narre lo que creó. Más allá del árbol: create_google_ads_conversion_action y list_google_ads_conversion_actions (lo que Google cuenta como resultado; TARGET_CPA, TARGET_ROAS, MAXIMIZE_CONVERSIONS y toda campaña Performance Max no se pueden entregar sin una, así que Hermoso se niega a construirlas en una cuenta que no tenga ninguna), create_google_ads_performance_max_campaign (el tipo de campaña multicanal de Google), add_google_ads_assets (sitelinks, callouts y fragmentos estructurados, creados y adjuntos, porque un recurso sin adjuntar no se muestra) y google_ads_keyword_ideas (Planificador de palabras clave: volumen de búsqueda mensual real, competencia y pujas de la parte superior de la página, así que las palabras clave se eligen con datos y no a ojo).
Gestiona anuncios de LinkedIn, Pinterest, Microsoft, X, TikTok, Snapchat, ChatGPT, Apple Search Ads y AppLovin Ads: el mismo patrón de pausado por defecto y confirmación obligatoria en cada otra plataforma de pago. LinkedIn: list_linkedin_ads_campaigns, linkedin_ads_report, create_linkedin_ads_campaign_group, create_linkedin_ads_campaign, create_linkedin_ads_creative, search_linkedin_ads_targeting, set_linkedin_ads_budget, set_linkedin_ads_status, delete_linkedin_ads_object. Pinterest: list_pinterest_ads_campaigns, pinterest_ads_report, create_pinterest_ads_campaign, create_pinterest_ads_ad_group, create_pinterest_ads_ad, set_pinterest_ads_budget, set_pinterest_ads_status. Microsoft Advertising (Bing): list_microsoft_ads_campaigns, microsoft_ads_report, create_microsoft_ads_campaign, create_microsoft_ads_ad_group, create_microsoft_ads_ad, add_microsoft_ads_keywords, set_microsoft_ads_budget, set_microsoft_ads_status, microsoft_ads_geo_search (resuelve nombres de país, región y ciudad a los ids de ubicación de Microsoft que necesita una campaña; sin ubicaciones, una campaña de Microsoft se crea sirviendo en todo el mundo, que es el valor por defecto de Microsoft, y la lectura de vuelta te lo advierte con fuerza). Reddit Ads, el árbol de cuenta completo: list_reddit_ads_campaigns, reddit_ads_report, create_reddit_ads_campaign, create_reddit_ads_ad_group, create_reddit_ads_ad, create_reddit_ads_post (un anuncio de Reddit promociona un post, así que el creativo es un post), set_reddit_ads_status, más planificación gratuita con search_reddit_ads_targeting, reddit_ads_forecast y reddit_ads_bid_suggestion, seguimiento de conversiones con list_reddit_ads_pixels y send_reddit_ads_conversions, retargeting y audiencias guardadas, formularios de clientes potenciales, y reddit_ads_history. Anuncios de ChatGPT (los anuncios que aparecen dentro de una respuesta de ChatGPT), a través de la API de anunciantes de OpenAI: list_openai_ads_campaigns, openai_ads_report, openai_ads_geo_search, create_openai_ads_campaign, create_openai_ads_ad_group, create_openai_ads_ad, update_openai_ads_object, set_openai_ads_budget, set_openai_ads_status. Los anuncios de ChatGPT tienen exactamente un formato creativo, una tarjeta de texto más imagen, y no tienen video, así que el agente sacará una imagen fija de tu film en lugar de ofrecerte un anuncio en video ahí. Anuncios de X, el árbol completo de posts promocionados, disponible desde agosto de 2026: list_x_ads_accounts, list_x_ads_funding_instruments, x_ads_report, create_x_ads_campaign, create_x_ads_line_item (el nombre que X da a un grupo de anuncios), create_x_ads_promoted_tweet, add_x_ads_targeting, x_ads_targeting_search, x_ads_geo_search, update_x_ads_campaign, update_x_ads_line_item, set_x_ads_status, delete_x_ads_object. Un anuncio de X promociona un post, así que el creativo es un post, el mismo que publica post_to_x. TikTok Ads es una conexión APARTE del conector de publicación de TikTok, y es la única plataforma que crea los objetos ACTIVADOS por defecto, así que Hermoso fuerza cada nivel a PAUSADO sin excepción: list_tiktok_ads_accounts, list_tiktok_ads_campaigns, list_tiktok_ads_identities, search_tiktok_ads_targeting, tiktok_ads_report, create_tiktok_ads_campaign, create_tiktok_ads_ad_group, upload_tiktok_ads_creative, create_tiktok_ads_ad, set_tiktok_ads_budget, set_tiktok_ads_status, delete_tiktok_ads_object. Snapchat Ads: list_snapchat_ads_accounts, list_snapchat_ads_campaigns, list_snapchat_ads_profiles, search_snapchat_ads_targeting, snapchat_ads_report, upload_snapchat_ads_creative, create_snapchat_ads_campaign, create_snapchat_ads_ad_squad, create_snapchat_ads_ad, set_snapchat_ads_budget, set_snapchat_ads_status, delete_snapchat_ads_object. Los presupuestos van en micromoneda (1,000,000 = una unidad), el titular del creativo tiene un tope de 34 caracteres, y un anuncio de Snapchat apunta a un CREATIVO y no a un id de medio. Tres notas de acceso que conviene tener antes de planificar un presupuesto: LinkedIn y Pinterest miden las escrituras de anuncios según el nivel de API que tenga tu cuenta publicitaria. Las lecturas y los informes no tienen restricción, pero crear campañas depende del acceso que la plataforma le haya concedido a tu cuenta. Meta, Google Ads, Microsoft Advertising, Reddit Ads y ChatGPT Ads no tienen ese nivel. X concede el acceso a la API de Ads por CUENTA PUBLICITARIA y no por aplicación, así que en lugar de un botón de OAuth añades el usuario de X de Hermoso a tu cuenta publicitaria en business.x.com → Account access, y aparece en list_x_ads_accounts con el nivel de permiso que X le dio. AppLovin Ads se conecta con una clave pegada: applovin_ads_report funciona en cualquier cuenta con su Reporting Key y applovin_ads_pixel con su Event Key, send_applovin_ads_events necesita la clave de la Conversion API de AppLovin, y list_applovin_ads_campaigns, create_applovin_ads_campaign, update_applovin_ads_campaign, set_applovin_ads_status, las herramientas de conjuntos creativos y upload_applovin_ads_assets usan la Campaign Management API de AppLovin, que AppLovin activa cuenta por cuenta, igual que la clave de la Conversion API. Pide a tu equipo de cuenta de AppLovin que las active y pega también esas claves.
Crea anuncios de Apple Search Ads, y léelos hasta el término de búsqueda: anuncios de búsqueda de la App Store, de principio a fin. Crear: create_apple_ads_campaign, create_apple_ads_ad_group, add_apple_ads_keywords, add_apple_ads_negative_keywords, create_apple_ads_creative, create_apple_ads_ad, upload_apple_ads_asset, update_apple_ads_object, set_apple_ads_status, delete_apple_ads_object. Cada objeto se crea pausado sin excepción, activarlo es el único interruptor que enciende gasto real y requiere confirmación, y cada resumen se construye a partir de una lectura de lo que Apple guardó de verdad. Los anuncios van en la ubicación de la pestaña Search; una campaña de resultados de búsqueda no necesita anuncio ni creativo, porque Apple muestra por sí mismo la página de producto de tu App Store, y Hermoso lo dice gratis en lugar de dejar que Apple rechace la creación. Leer: list_apple_ads_campaigns (estado, estado de servicio, presupuesto diario y total, los países donde corre, y el motivo que Apple indica cuando una campaña no puede correr), list_apple_ads_ad_groups (puja por defecto, y si Search Match de Apple está activado), list_apple_ads_keywords (segmentación y negativas, con tipo de coincidencia y puja), apple_ads_report (impresiones, toques, instalaciones, gasto, TTR, CPT y CPA, a nivel de campaña, grupo de anuncios, palabra clave, término de búsqueda o anuncio), list_apple_ads_creatives, list_apple_ads_ads, list_apple_ads_assets, list_apple_ads_product_pages (tu ficha de App Store y cualquier página de producto personalizada, con su contenido por idioma), search_apple_ads_apps y check_apple_ads_app_eligibility (en qué ubicaciones, países y dispositivos puede anunciarse realmente tu app, conviene leerlo antes de crear) y list_apple_ads_orgs. No hay botón de OAuth para esto, porque Apple no publica ningún flujo OAuth: Hermoso genera la clave de firma, tú pegas su mitad pública en Apple Ads → Account Settings → API y pegas de vuelta tres ids. Apple muestra ese campo solo a un usuario con un rol de API, así que un Account Admin primero invita a alguien o cambia a ese rol. La guía del conector de Apple Search Ads recorre todo el proceso. Cada conexión queda fijada a la única organización de Apple Ads que elegiste al crearla.
Informes y exportación: Google Drive save_to_drive, list_drive_files, get_drive_file, update_drive_file, delete_drive_file, create_drive_folder; Sheets create_sheet, append_to_sheet, read_sheet; Docs create_doc, append_to_doc, read_doc; Microsoft OneDrive save_to_onedrive, list_onedrive_files, get_onedrive_file, update_onedrive_file, create_onedrive_folder, delete_onedrive_file. Los leads llegan a tu CRM a través del MCP de HubSpot: sync_leads_to_hubspot envía los leads de formularios de Meta y LinkedIn como contactos, y hubspot_deals_report informa los tratos por etapa y origen.
Memoria, perfiles, skills y equipo: remember, forget, list_memory, store_get; perfiles create_brand, delete_brand, use_brand, list_brands, para que una agencia pueda incorporar un cliente nuevo y darlo de baja sin abrir la app, y los perfiles son ilimitados en todos los planes; skills, ahora una sola biblioteca que absorbió la antigua tienda de “empleados de IA”: save_skill, list_skills, get_skill, delete_skill; equipo invite_member, list_team, set_role, remove_member.
Cuenta, ajustes y conectores: hermoso_capabilities (consulta modelos y costos exactos por render; llámala primero), hermoso_credits, buy_credits, billing_status, upgrade_plan, set_auto_reload, get_job, list_jobs, report_bug, request_feature; ajustes get_settings, update_settings (idioma y apariencia, guardados en la cuenta y no en el navegador, para que un cliente que solo usa agentes no quede en inglés); conectores list_connectors, list_connector_accounts, set_connector_accounts (elige exactamente qué Páginas, cuentas publicitarias y tableros se pueden usar; la herramienta informa la lectura de vuelta del servidor, nunca la solicitud), disconnect_connector. Conectar una cuenta es una pantalla de consentimiento de OAuth, así que es el único paso que todavía necesita un navegador; todo lo que viene después lo puede llamar el agente.