Lo que necesitas
Nada especial. Las tres lecturas de conversaciones viajan en el set por defecto de la conexión: si ya conectaste tu asistente con la URL pelada, ya puedes pedirlo. Para revisar chats no hace falta?features=all, que conecta el
catálogo completo, escrituras destructivas incluidas.
Pídelo así
Copia y pega esto en tu asistente:Si tienes varios agentes de ventas, di cuál. Tu asistente necesita el
agent_id
(lo saca de list_agents), salvo que hayas conectado con ?agent=<uuid> en la
URL, que lo deja fijado.Qué ve tu asistente
La bandeja: list_conversations
Por cada conversación devuelve el nombre del contacto, el usuario del canal, el
preview del último mensaje con su hora, el teléfono, el capítulo del
embudo en el que está el cliente, quién respondió el último (responded_by),
el origen, a quién está asignada y sus etiquetas. Va paginada: 20 filas por
defecto, 50 como máximo por página.
El hilo: read_conversation
Le pasas el identificador de una conversación y devuelve el hilo real:
- Los mensajes, cada uno con quién lo escribió (
sender: cliente, robot u operador), la hora, el tipo, si es multimedia y el estado de entrega. - Las citas: cuando un mensaje responde a otro, llega el texto citado y si era tuyo o del cliente.
- El capítulo actual del embudo y los divisores de capítulo
(
chapter_events): cuándo saltó de un capítulo a otro y por qué. - Las herramientas que ejecutó el agente (
tool_calls): nombre, estado y momento. Aquí es donde se destapa el bot que dice que envió el catálogo cuando en realidad la herramienta falló.
has_next significa «hay mensajes más viejos». 50 mensajes por página, 100 como
máximo.
Los guiones de un agente de ventas son largos. Si un hilo no cabe en la
respuesta, el puente suelta los mensajes más viejos de esa ventana y lo
declara con
truncated: true y una nota. Nunca recorta en silencio: si ves esa
marca, pídele que repita esa misma página con un limit más chico —así recupera
lo que se soltó— y luego siga con las más viejas.La cartera: list_clients
Es el CRM, y trae los filtros que convierten «revisa mis chats» en una muestra
con criterio:
Cada fila trae además si el cliente se dio de baja (
opted_out), cuántas
conversiones lleva, cuánto ha gastado y cuándo tiene el próximo recordatorio.
La distribución por capítulo ya es un diagnóstico. Una masa de clientes
atascada en el mismo capítulo te está señalando la compuerta rota.
list_clients pagina por cursor, no por número de página, y el total solo llega
en la primera página. Es un detalle técnico que resuelve tu asistente solo; lo
mencionamos para que no te extrañe si te dice «total: no disponible» al pedirle
la segunda tanda.El texto de tus clientes llega marcado como DATOS
Todo lo que escribe alguien por WhatsApp llega a tu asistente delimitado, así:- La marca es distinta en cada respuesta. Se sortea al vuelo, y se comprueba que no aparezca dentro de ningún texto antes de usarla. Un cliente no puede escribir el cierre de la marca para «salirse» del bloque: no sabe cuál es.
- Se marcan TODAS las burbujas, no solo las del cliente. Las del robot
también, porque el robot repite lo que le dijo el cliente. Y el campo
senderte dice quién escribió cada una. - La nota dice la verdad en cada herramienta. En la bandeja te avisa de que el preview puede ser del cliente, del operador o del robot. No te vende que todo lo escribió el cliente.
El teléfono sale tapado
Tus clientes no son usuarios de OptiMind: le escribieron a tu negocio y no han consentido nada con el proveedor de IA que va a leer la respuesta. Por eso el número llega enmascarado por defecto:(oculto) entero.
Enmascarar no cierra ninguna operación. Ninguna herramienta que opere sobre
un chat existente recibe un teléfono como entrada: responder, cambiar el modo,
programar recordatorios y consultar pedidos direccionan todos por la
conversación. La única mella es de comodidad: list_clients puede buscar por
teléfono, y con el número tapado tu asistente no puede encadenar uno que acaba
de leer — se lo dictas tú, o conectas con pii=full. La única que pide un número es simulate_new_chat, y ahí lo
tecleas tú: es tu número de pruebas, no uno leído de la bandeja. Y hay una
ganancia extra: un número tapado ya no contiene texto de nadie, así que
desaparece una superficie de manipulación entera.
Si de verdad necesitas los números completos, reconecta añadiendo pii=full
a la URL:
La rúbrica: dónde mirar
Estos son seis puntos de muerte que aparecen una y otra vez en auditorías de chats de venta. Pídele a tu asistente que marque cuáles están presentes, con la cita y el chat donde lo vio.
Frases que puedes copiar tal cual:
Pide números, no adjetivos
«Hay problemas de cierre» no sirve para nada. «3 de los 5 perdidos murieron en la misma compuerta del capítulo 2» te dice qué tocar esta tarde. Cierra siempre con esto:Del hallazgo al arreglo
1
Marca los chats del hallazgo
assign_client_tags es la única escritura del set por defecto: fija las
etiquetas de un cliente sin necesidad de activar nada.Ojo: es un reemplazo total. Las etiquetas que no vayan en la lista se
quitan. Díselo así: «etiqueta esos 5 chats como “revisar”, conservando las
etiquetas que ya tuvieran».2
Arregla la causa en el manual
Casi todos los antipatrones se corrigen en el manual del agente, no chat a
chat: la compuerta sorda se cierra con una instrucción de «responde lo
preguntado y remata con la pregunta pendiente»; la rama sin CTA, exigiendo
que toda ráfaga acabe en una pregunta; el precio escondido, metiendo el
número en el capítulo de oferta.Leer el manual entra en el set por defecto. Guardar cambios exige
?features=manual_write, y cada guardado crea una versión: el historial
conserva las 10 más nuevas y puedes volver atrás.3
Rescata lo que ya está perdido
Los clientes en silencio se recuperan con recordatorios, que viven en el
grupo
operations (ver abajo).4
Vuelve a medir
Agenda revisar la misma compuerta en una o dos semanas. Si el hallazgo era
real, deberías ver menos chats muriendo ahí.
Para RESPONDER hace falta pedirlo
Revisar y responder son cosas distintas, y a propósito. Leer conversaciones va de serie; actuar sobre ellas no. Un asistente que lee texto que escribe cualquier desconocido y además puede mandar WhatsApps es exactamente la combinación que ha reventado a otros puentes MCP. Por eso las acciones viven fuera del set por defecto, detrás de un?features= que tienes que escribir tú.
Y como la lista reemplaza al default, para revisar y responder hay que
nombrar los dos: ?features=conversations,operations.
Lo que se activa al pedirlo:
send_operator_message— manda un WhatsApp real al cliente, como operador humano, saltándose el guion del agente. Va anotada como destructiva, que es la señal con la que Claude, ChatGPT o Codex te piden confirmación. La anotación la ponemos nosotros; el diálogo lo pone tu asistente. No tiene reintento seguro: si la llamada se repite, el cliente recibe el mensaje dos veces.set_conversation_mode— pasa un chat amanual(calla el agente, responde una persona) o de vuelta aauto. Cuidado: en modo manual, los recordatorios que venzan se cancelan en vez de posponerse.create_reminder— programa un toque proactivo. Lo que escribes no es el mensaje que verá el cliente, sino la instrucción para el agente (máximo 500 caracteres); al vencer, él redacta el texto. La fecha exige zona horaria. Conexpires_on_replyse cancela solo si el cliente escribe antes. Máximo 20 programaciones activas por chat.list_remindersycancel_reminder— ver y cancelar lo programado.
?read_only=true: desactiva toda escritura y manda sobre cualquier otra
opción de la URL.
Límites que conviene conocer
Preferimos decírtelos a que los descubras a mitad de una auditoría:- Sin filtro por fecha. «Ayer» lo resuelve tu asistente mirando las horas de los mensajes, no el servidor.
- Sin búsqueda dentro de los hilos. No puedes pedir «todos los chats donde alguien dijo caro». Se lee por conversación, o se filtra por CRM.
- Los hilos largos llegan recortados (siempre avisando, y conservando lo más reciente). Un chat de meses hay que pedirlo por páginas.
tool_callste da nombre, estado y hora, no los detalles de qué se envió ni qué devolvió cada herramienta.- Si la lectura del capítulo y las herramientas falla, el hilo llega igual,
pero con esa parte vacía. Una lista vacía de
tool_callsno es prueba definitiva de que el agente no ejecutó nada. - El bloqueo del sistema manda. Al cambiar el modo, el estado que te
devuelve puede ser
locked_human: el sistema tiene la mano bloqueada y ese chat no ha quedado como pediste.