Dev

Construye con IA: cómo armar el WhatsApp de los clientes de la agencia con Claude Code, OpenAPI y MCP

Cada vez más dueños de agencia construyen sus propias soluciones con Claude Code, Cursor, Codex y otras IAs. Lo que separa una primera versión que funciona de una que inventa endpoints es el contexto que recibe el agente. ZapZap publica la especificación OpenAPI, la colección Postman, SDKs, un servidor MCP y el llms.txt justamente para eso. GM Solutions Hub, agencia del fundador de ZapZap, usa ZapZap con sus clientes; es una declaración de fuente propia, sin números de resultado. ZapZap es una API no oficial: WhatsApp puede limitar o bloquear números.

Publicado el · 4 min de lectura

Este artículo también está disponible en: Português · English

Lo que existe para que tu IA lea

Cuatro piezas. El llms.txt resume el producto, el precio, los límites y los enlaces para el agente. La especificación OpenAPI y la colección Postman describen los endpoints, en portugués, inglés y español. El servidor MCP, de código abierto (github.com/zapzapapi/zapzap-mcp), le da al agente herramientas listas, y los SDK oficiales (Node.js, Python y PHP, en el GitHub zapzapapi) cubren la integración en código. Mira la página de agentes de IA y la guía del servidor MCP.

Paso 1: dale el contexto, no la contraseña

Pon en el archivo de instrucciones del proyecto (CLAUDE.md, AGENTS.md o las reglas de Cursor) los enlaces de la OpenAPI y del llms.txt, la base URL y los nombres de las variables de entorno. Nunca pegues la clave y el secreto de la API en el prompt ni en el repositorio: el agente solo necesita saber que existen ZAPZAP_API_KEY y ZAPZAP_API_SECRET.

Un fragmento de instrucciones que funciona: "La API de WhatsApp es ZapZap. Especificación: https://zapzapapi.com/openapi/zapzap-openapi.es.json. Resumen para IA: https://zapzapapi.com/llms.txt. Base: https://api.zapzapapi.com/api/v1. Autenticación: encabezados x-api-key y x-api-secret, leídos de ZAPZAP_API_KEY y ZAPZAP_API_SECRET. Usa solo endpoints presentes en la especificación y avisa cuando un recurso no exista."

Paso 2: pide una cosa por vez, con criterio de terminado

Los prompts que funcionan son pequeños y verificables. Para un CRM mínimo: "Crea un script Node.js que reciba el webhook de mensajes recibidos de ZapZap y guarde en una tabla leads (teléfono, nombre, primer mensaje, instancia, fecha). Usa solo los campos que describe la especificación, valida el payload y responde 200 rápido." Para un reporte: "Lee las instancias con GET /instances y, para cada una, las campañas con GET /{instanceId}/sender/listfolders. Genera un JSON con los contadores log_total, log_delivered, log_read y log_failed." Para recordatorios: "Programa un mensaje con POST /{instanceId}/sender/simple usando scheduled_for en milisegundos."

Pide siempre la prueba al final: "escribe una prueba que corra contra una instancia de homologación". Y haz que el agente cite de qué operación de la OpenAPI sacó cada llamada, lo que vuelve la revisión cuestión de un minuto.

Paso 3: un ejemplo que el agente puede usar como base

El fragmento de abajo es la base de casi todo: listar las instancias de la cuenta y revisar el estado de cada una. Usa solo operaciones documentadas, y sirve como punto de partida para un panel interno de salud de los números de los clientes.

List instances and check the status of each one

const BASE = "https://api.zapzapapi.com/api/v1";
const headers = {
  "x-api-key": process.env.ZAPZAP_API_KEY,
  "x-api-secret": process.env.ZAPZAP_API_SECRET,
};

const instances = await (await fetch(BASE + "/instances", { headers })).json();
for (const inst of instances) {
  const r = await fetch(BASE + "/" + inst.id + "/instance/status", { headers });
  console.log(inst.name, r.ok ? await r.json() : "HTTP " + r.status);
  await new Promise((res) => setTimeout(res, 1000));
}

Qué pedirle primero a la IA que construya

Cuatro proyectos de alto retorno para una agencia: un panel de salud de los números de los clientes (cuáles se cayeron, cuáles necesitan reconectarse), un CRM mínimo alimentado por webhook, un reporte mensual por cliente (mira automatizar reportes) y un programador de seguimientos y recordatorios (mira programar mensajes de compromisos). Para el flujo de leads de anuncios por cliente, mira seguir leads de anuncios.

Empieza por el panel de salud: es de solo lectura, tiene poco riesgo y ya entrega valor en la primera semana.

Cuidados al dejar que la IA programe

Revisa todo envío. Un agente que genera código que envía mensajes puede, por error, mandar el mismo mensaje a una lista entera o ignorar el ritmo. Exige retrasos entre envíos, un tope de volumen por ejecución y un modo de prueba que escriba en un log en lugar de enviar. No apruebes código que envíe a listas sin consentimiento, según el uso aceptable.

Atiende también la seguridad: clave y secreto solo en el back-end, nunca en el navegador, y una clave por entorno. Para las páginas de nicho, mira agencias con IA y reventa con la marca del cliente.

Resumen rápido

  • ZapZap publica llms.txt, OpenAPI, Postman, SDKs (Node.js, Python, PHP) y un servidor MCP de código abierto para que el agente los lea.
  • Dale al agente el contexto (enlaces y nombres de variables), nunca la clave y el secreto.
  • Prompts pequeños, con criterio de terminado, y la cita de la operación de la OpenAPI usada.
  • Empieza por un panel de salud de solo lectura y evoluciona hacia CRM, reportes y programación.
  • Revisa todo código de envío: retrasos, tope de volumen y modo de prueba.

Lee también

Preguntas frecuentes

¿ZapZap tiene servidor MCP?

Sí, de código abierto (github.com/zapzapapi/zapzap-mcp), con 25 herramientas, según el llms.txt. Funciona en clientes que hablan MCP, como Claude y Cursor.

¿Dónde está la especificación OpenAPI?

En zapzapapi.com/openapi/zapzap-openapi.pt.json (y .en.json y .es.json), con la colección Postman al lado, en la página de OpenAPI.

¿Puedo pegar la clave de API en el prompt?

No. Usa variables de entorno y deja que el agente conozca solo los nombres. Una clave en un prompt puede filtrarse en el historial y en los logs.

¿Qué SDK existen?

Node.js, Python y PHP, distribuidos por el GitHub de zapzapapi, según el llms.txt.

¿GM Solutions Hub usa ZapZap?

Sí. GM Solutions Hub, agencia del fundador de ZapZap, usa ZapZap con sus clientes. Es una declaración de fuente propia, sin números de resultado.

Dale a tu agente de código una API que entiende

Crea la cuenta, genera la clave de API y apunta al agente a la OpenAPI y al llms.txt. R$15 por número activo al mes, sin cobro por mensaje. Al verificar el teléfono hay crédito de bienvenida, sujeto a la campaña vigente.