Referencia técnica
Marketools desde tu chat
Conecta Marketools como servidor MCP y trabaja tu marca donde ya estás: qué anuncios tienen activos tus competidores, qué estructuras repiten y tu versión on-brand.
63 herramientas disponibles
Cómo conectarlo
Cinco pasos. No necesitas API key: la conexión se autoriza con tu cuenta.
- 01
Ten una cuenta de Marketools
Puedes usar una marca ya cargada o iniciar el onboarding desde el chat pegando la URL de tu tienda. Marketools te presenta el ADN encontrado para que lo confirmes.
- 02
Abre la configuración de conectores de tu cliente
En Claude es Configuración → Conectores → Agregar conector personalizado. Cualquier cliente compatible con MCP funciona igual.
- 03
Pega la dirección del servidor
Es la única cosa que tienes que copiar.
https://app.marketools.ai/api/mcp - 04
Autoriza con tu cuenta
Te vamos a mostrar exactamente qué permisos estás dando antes de que aceptes. El permiso básico puede leer y también crear o modificar los datos de tu marca; gastar créditos va en una casilla aparte que marcas tú.
- 05
Pide lo que necesitas, en tus palabras
"¿Contra quién compito y qué estructuras repiten?" o "hazme mi versión del anuncio que lleva más tiempo corriendo". El cliente elige las herramientas por ti.
Sobre los permisos
El permiso básico no es solo lectura: además de leer, puede crear y modificar los datos de tu marca (marcas, productos, clientes ideales, ángulos, competidores y notas). Las que gastan —generar anuncios, buscar competidores, monitorear sitios, traer comentarios o reseñas— piden un permiso aparte que autorizas explícitamente. Están marcadas abajo. Si tu conexión es anterior a ese permiso, quita el conector y agrégalo de nuevo.
Herramientas
Esta lista se genera desde el servidor, así que no puede quedar desactualizada. En negrita los parámetros obligatorios; los que terminan en «?» son opcionales.
Onboarding
Pasa de un sitio web a un ADN de marca confirmado por una persona y un producto o servicio listo para usar, sin salir de la conversación.
start_brand_onboardingescribegastasale a internetRastrea el sitio de una marca y prepara una propuesta de Brand DNA junto con los productos o servicios detectados. Requiere aprobación humana antes de confirmar el DNA.
url string
get_brand_setup_statussolo lecturaidempotenteConsulta el progreso del onboarding, el DNA propuesto, los productos o servicios detectados y el enriquecimiento en segundo plano.
sessionId uuid?
confirm_brand_dnaescribeidempotenteGuarda el Brand DNA propuesto después de que una persona lo haya revisado y aprobado explícitamente.
sessionId uuid
select_brand_productescribegastaidempotenteSelecciona un producto o servicio detectado y su imagen preferida. Crea el producto e inicia su enriquecimiento en segundo plano.
sessionId uuid · productId string · preferredImageUrl url?
Marcas
Por dónde empezar: qué marcas puedes ver y todo su contexto de una sola vez.
list_brandssolo lecturaidempotenteLista las marcas a las que puede acceder el usuario autenticado.
get_brandsolo lecturaidempotenteObtiene una marca por id, incluidos sus campos principales.
brandId uuid
get_contextsolo lecturaidempotenteReúne el contexto de una marca y, opcionalmente, de un producto, ICP y ángulo para generar anuncios. response_format ('concise' por defecto o 'detailed') solo cambia el resumen en texto; los datos completos siempre viajan en structuredContent.
brandId uuid · productId uuid? · icpId uuid? · angleId uuid? · response_format concise | detailed?
create_brandescribeCrea una marca propiedad del usuario autenticado como raíz de la base de conocimiento.
slug string · displayName string · websiteUrl value? · countryCode value? · languageCode value? · currencyCode value?
update_brandescribeidempotenteActualiza los campos principales de una marca; solo modifica los campos enviados.
brandId uuid · slug string? · displayName string? · websiteUrl value? · countryCode value? · languageCode value? · currencyCode value?
Identidad
El ADN y la voz de la marca — lo que decide cómo se ve y cómo suena cada anuncio.
get_brand_dnasolo lecturaidempotenteObtiene el Brand DNA de una marca, incluidos posicionamiento, tokens de diseño y diferenciadores.
brandId uuid
get_brand_voicesolo lecturaidempotenteObtiene la voz de una marca, incluidos tono, vocabulario y ejemplos de reescritura.
brandId uuid
upsert_brand_dnaescribeidempotenteCrea o reemplaza el Brand DNA completo de una marca, incluidos posicionamiento, mercados, diseño y logos.
brandId uuid · oneLiner value? · mission value? · vision value? · originStory value? · differentiators value? · designTokens value? · logoDarkUrl value? · logoLightUrl value? · logoIconUrl value? · category value? · targetMarkets value?
upsert_brand_voiceescribeidempotenteCrea o reemplaza la voz completa de una marca, incluidos tono, reglas, vocabulario y ejemplos.
brandId uuid · toneAttributes value? · sentenceStructureRules value? · rhythmPatterns value? · voiceAnchors value? · wordsToUse value? · wordsToAvoid value? · phrasesCanonical value? · phrasesForbidden value? · exampleRewrites value?
Catálogo
Productos, briefs y fotos. Es de acá que sale el contenido del anuncio.
list_productssolo lecturaidempotenteLista los productos de una marca.
brandId uuid
get_productsolo lecturaidempotenteObtiene un producto por id.
productId uuid
get_product_briefsolo lecturaidempotenteObtiene el brief de un producto, incluidos propuesta de valor, beneficios, pruebas, ofertas y competidores.
productId uuid
list_product_assetssolo lecturaidempotenteLista las imágenes de un producto, como packshots, recortes e imágenes lifestyle.
productId uuid
create_productescribeCrea un producto dentro de una marca.
brandId uuid · slug string · displayName string · productUrl value?
update_productescribeidempotenteActualiza el nombre, slug o URL de un producto; solo modifica los campos enviados.
productId uuid · slug string? · displayName string? · productUrl value?
upsert_product_briefescribeidempotenteCrea o reemplaza el brief de un producto con valor, beneficios, pruebas, competidores, claims, objeciones y ofertas.
productId uuid · valueProposition value? · sellingName value? · mainBenefits value? · proofPoints value? · mainCompetitors value? · badSolutions value? · approvedClaims value? · forbiddenClaims value? · consumerBlockers value? · activeOffers value?
add_product_assetescribeAgrega a un producto una imagen accesible mediante URL.
productId uuid · assetType packshot | cutout | on_model | before_after | ugc | lifestyle | concept | graphic · url string · aspectRatio value? · tags value? · position value?
set_primary_product_assetescribeidempotenteConvierte una foto del producto en su vista principal: la imagen que usan todas las generaciones siguientes de ese producto. La elección siempre la hace el humano tras ver las opciones.
productId uuid · assetId uuid
Público y ángulos
A quién le hablas y desde qué ángulo.
list_icpssolo lecturaidempotenteLista los perfiles de cliente ideal, o ICPs, de un producto.
productId uuid
get_icpsolo lecturaidempotenteObtiene un ICP por id, incluido su perfil detallado.
icpId uuid
list_anglessolo lecturaidempotenteLista los ángulos de mensaje asociados con un ICP.
icpId uuid
get_anglesolo lecturaidempotenteObtiene un ángulo de mensaje por id.
angleId uuid
create_icpescribeCrea un ICP con datos demográficos, contexto, valores, frustraciones, aspiraciones, vocabulario y objeciones.
productId uuid · name string · shortLabel value? · ageRanges value? · gender value? · location value? · incomeBracket value? · lifeStage value? · contextStory value? · coreValues value? · dailyFrustrations value? · aspirations value? · vocabularyCanonical value? · vocabularyAvoid value? · objectionPatterns value? · dataSources value?
update_icpescribeidempotenteActualiza los campos de un ICP; solo modifica los campos enviados.
icpId uuid · name string? · shortLabel value? · ageRanges value? · gender value? · location value? · incomeBracket value? · lifeStage value? · contextStory value? · coreValues value? · dailyFrustrations value? · aspirations value? · vocabularyCanonical value? · vocabularyAvoid value? · objectionPatterns value? · dataSources value?
create_angleescribeCrea un ángulo de mensaje para un ICP con tensión, solución y, opcionalmente, dolores, deseos y pruebas.
icpId uuid · label string · shortLabel value? · context string · frustration string · desire string · howProductSolves string · painPointLabels value? · desireStatements value? · proofHooks value?
update_angleescribeidempotenteActualiza los campos de un ángulo de mensaje; solo modifica los campos enviados.
angleId uuid · label string? · shortLabel value? · context string? · frustration string? · desire string? · howProductSolves string? · painPointLabels value? · desireStatements value? · proofHooks value?
Competencia
Quién compite contra ti y qué está corriendo ahora mismo en la biblioteca pública de anuncios de Meta.
discover_competitorsescribegastasale a internetBusca competidores para una marca e inicia su seguimiento. Sigue páginas: no descarga sus anuncios — el corpus se llena en la corrida de los lunes, así que una página recién seguida puede tener cero anuncios por un rato. Usa primero los competidores que ya nombra el Brief de Producto y después una barrida por palabras clave, empezando por el mercado propio de la marca. Si un nombre del brief no resuelve a una página con confianza, lo reporta en vez de adivinar. Consume presupuesto de investigación. Cooldown por marca: 12 horas cuando la marca ya sigue al menos un competidor, 1 hora mientras no sigue a ninguno.
brandId uuid
get_discovery_runsolo lecturaidempotenteConsulta una búsqueda iniciada por discover_competitors y devuelve su estado, los competidores encontrados y los nombres del Brief de Producto que no se pudieron identificar (unresolvedBriefNames).
runId uuid
list_brand_competitorssolo lecturaidempotenteLista los competidores que una marca sigue y el mercado asociado con cada uno.
brandId uuid
add_brand_competitorescribeidempotenteAgrega manualmente un competidor mediante su Meta Page id, sin verificarlo contra Meta ni consumir presupuesto de investigación.
brandId uuid · pageId string · pageName string · country string? · thumbnailUrl url?
remove_brand_competitorescribeborraidempotenteDeja de seguir un competidor y lo archiva fuera del conjunto activo; la operación es reversible.
brandId uuid · pageId string
search_competitor_adssolo lecturaidempotenteBusca en los anuncios recopilados de los competidores seguidos. Conviene empezar solo con brandId: query es una coincidencia literal sobre el texto del anuncio y el nombre de la página, no una búsqueda por tema. La longevidad y repetición indican actividad, no conversiones ni ROAS. response_format ('concise' por defecto o 'detailed') solo cambia el resumen en texto; structuredContent siempre trae el resultado completo.
brandId uuid · query string? · pageId string? · country string? · productCategory string? · activeOnly boolean? · minDaysRunning number? · limit number? · response_format concise | detailed?
get_competitor_adescribesale a internetidempotenteObtiene un anuncio competidor y puede iniciar el análisis de su estructura. Si no está disponible, la adaptación usa una plantilla de categoría.
brandId uuid · competitorAdId uuid
collect_competitor_adsescribegastasale a internetidempotenteTrae ahora mismo los anuncios que un competidor ya seguido tiene corriendo en Meta, hacia el corpus de la marca. Seguir a un competidor registra a quién mirar, no baja sus anuncios: esta es la palanca manual para no esperar a la recolección semanal. Consume presupuesto de investigación (no créditos de anuncio), corre en segundo plano y se consulta llamando a la misma herramienta otra vez, lo cual es gratis mientras la recolección está en curso.
brandId uuid · pageId string · country string?
Crear
Tomar una referencia activa de un competidor y sacar tu versión. La estructura es de él; el producto, el mensaje y la marca son tuyos.
list_adssolo lecturaidempotenteLista los anuncios generados de una marca, con filtros opcionales por producto o estado.
brandId uuid · productId uuid? · status generating | completed | failed?
get_adsolo lecturaidempotenteObtiene un anuncio generado por id, incluidas sus imágenes, copy y estado.
adId uuid
count_ads_this_monthsolo lecturaidempotenteCuenta los anuncios generados durante el mes calendario actual contra la cuota del usuario.
get_quotasolo lecturaidempotenteConsulta cuánto queda por gastar. Sin brandId responde por la cuenta conectada: plan, créditos de anuncios del mes y presupuesto mensual de investigación en dólares — funciona incluso antes de que exista una marca. Con brandId responde por el propietario de esa marca: plan, límite mensual, uso y saldo de generación.
brandId uuid?
adapt_competitor_adescribegastasale a internetidempotenteInicia un anuncio de la marca desde la estructura de un anuncio competidor, usando producto, mensaje e identidad propios. Por defecto genera feed y story; con formats: ["feed"] genera solo el feed. Consume un crédito, sea uno o dos formatos.
brandId uuid · competitorAdId uuid · productId uuid? · icpId uuid? · formats array of feed | story? · idempotencyKey string?
edit_adescribegastasale a internetidempotenteCorrige o cambia un anuncio ya generado con una instrucción en lenguaje natural: edita la imagen existente sobre su última versión completada, sin re-renderizar. Las primeras ediciones de cada anuncio son gratis; después cuesta un crédito y exige la confirmación explícita del humano.
brandId uuid · adId uuid · instruction string · confirmPaid boolean? · idempotencyKey string?
get_ad_jobsolo lecturaidempotenteConsulta el estado de un trabajo iniciado por adapt_competitor_ad o edit_ad y devuelve sus imágenes o el motivo del fallo. QA puede marcar un resultado completado.
jobId uuid
mark_ad_runnableescribeidempotenteRegistra lo que la persona decidió sobre un anuncio terminado: si lo publica tal cual en Meta, sin diseñador ni retoques. Es gratis. Un "no" pide un motivo de una lista fija, que es lo que nos dice qué corregir. Una sola respuesta por anuncio: la primera es la que cuenta.
adId uuid · runnable boolean · reason product_wrong | copy_wrong | claim_not_defensible | off_brand | crop_or_clipping | format_wrong | other? · note string?
Voz del cliente
Reseñas y comentarios: de dónde salen las objeciones reales y las palabras que usa tu cliente.
get_ad_commentsescribegastasale a internetObtiene comentarios de un post o anuncio público de Facebook sin almacenarlos. Consume créditos del proveedor.
brandId uuid · postUrl url · limit number?
harvest_reviewsescribegastasale a internetExtrae y guarda reseñas publicadas como datos estructurados en páginas públicas de la marca. No cubre fuentes bloqueadas como Trustpilot o Amazon.
brandId uuid · url url?
add_customer_reviewescribeidempotenteGuarda una reseña real de un cliente que la persona te pasó en la conversación — pegada, reenviada o dictada. Gratis: no rastrea nada. Exige decir de dónde salió y queda con su procedencia para que un anuncio pueda citarla.
brandId uuid · body string · author string? · rating number? · sourceUrl url? · sourceNote string?
search_reviewssolo lecturaidempotenteBusca entre las reseñas recopiladas para una marca y permite filtrarlas por texto y calificación.
brandId uuid · query string? · minRating number? · maxRating number? · limit number?
get_review_themessolo lecturasale a internetResume las reseñas almacenadas en temas y objeciones recurrentes; no genera temas cuando no hay evidencia suficiente.
brandId uuid · limit number?
Mercado
Qué se está diciendo en video corto y qué cambió en los sitios que sigues.
monitor_brand_siteescribegastasale a internetToma una captura estructurada de un sitio y compara precios, productos, promociones y textos con la captura anterior.
brandId uuid · url url? · kind own | competitor?
get_site_changessolo lecturaidempotenteConsulta el historial de capturas de sitios y los cambios detectados entre capturas consecutivas.
brandId uuid · url url?
search_tiktok_videosescribegastasale a internetBusca videos cortos sobre un tema en TikTok, guarda los resultados y consume créditos del proveedor.
brandId uuid · query string · limit number?
search_organic_socialsolo lecturaidempotenteConsulta los posts orgánicos recopilados para una marca sin volver a llamar al proveedor.
brandId uuid · query string? · platform tiktok | instagram? · limit number?
Memoria
Lo que conviene recordar entre conversaciones: qué ya probaste, qué no se puede decir, qué funcionó.
rememberescribeidempotenteGuarda una restricción, resultado o preferencia aprendida sobre una marca para conversaciones futuras.
brandId uuid · key string · value string · scope brand | user?
recallsolo lecturaidempotenteConsulta los recuerdos compartidos de una marca y las notas privadas del usuario autenticado.
brandId uuid · query string? · limit number?
forgetescribeborraidempotenteElimina por clave un recuerdo compartido de la marca o una nota privada del usuario.
brandId uuid · key string · scope brand | user?
Agente semanal
El benchmark de competencia que corre todos los lunes: léelo cuando quieras y prende o apaga el envío.
get_weekly_briefsolo lecturaidempotenteLee el benchmark semanal de competencia de una marca: competidores analizados, el hallazgo de la semana, anuncios propuestos con sus imágenes y qué cambió en tu propia tienda. Si la marca todavía no tiene un brief, explica por qué y qué hacer ahora — nunca un simple 'no encontrado'.
brandId uuid · briefId uuid?
configure_weekly_agentescribeidempotenteActiva o desactiva el brief semanal de competencia para el propietario de una marca. Este interruptor es por propietario, no por marca: apagarlo pausa el correo del lunes para todas sus marcas. La cadencia (todos los lunes) no es configurable, y el set de competidores se maneja con add_brand_competitor / remove_brand_competitor.
brandId uuid · enabled boolean?
Ayuda y feedback
Por dónde empezar y cómo decirnos qué falta: una guía según el estado real de tu cuenta, feedback directo a los fundadores y un registro de las capacidades que te gustaría tener.
getting_startedsolo lecturaidempotenteGuía de inicio según el estado real de tu cuenta: sin marca te lleva al onboarding, con DNA pendiente te muestra el paso de aprobación, sin competidores (o sin anuncios suyos recopilados) te da el paso exacto que lo desbloquea, y cuando de verdad puede generar te da los flujos con prompts de ejemplo.
send_feedbackescribeEnvía feedback sobre Marketools directo a los fundadores sin salir del chat. Queda registrado y llega por correo.
message string · context string?
get_more_toolssolo lecturaidempotenteRegistra una capacidad que necesitas y que hoy no existe, y te sugiere las herramientas más cercanas que sí están disponibles.
capability string
Si algo no funciona
- El conector se agregó pero no aparece ninguna herramienta.
- Casi siempre es la dirección: tiene que terminar en /api/mcp. El dominio solo no responde como servidor MCP.
- Una herramienta dice que le falta un permiso.
- Tu conexión se autorizó antes de que ese permiso existiera. No te lo va a volver a pedir solo: quita el conector y agrégalo de nuevo.
- Pedí un anuncio y no llegó nada.
- Generar suele tardar alrededor de cinco minutos (medido sobre el pipeline real) y no bloquea la respuesta: la herramienta devuelve un identificador y el resultado se consulta aparte. Si después de eso sigue sin aparecer, pregunta por el estado de ese identificador.