What's new, 21 October 2026: A customer who sends several messages before the bot's first reply no longer gets the opening sequence of a Chat Flow twice
WASync · Developers

MCP

Conecte Claude, Cursor o cualquier cliente MCP al servidor remoto de WASync. Seis herramientas, sin código de su parte.

WASync ejecuta un servidor MCP remoto sobre Streamable HTTP. Agréguelo a un cliente MCP y el agente obtiene herramientas de WhatsApp sin código de su parte.

MCP server URL
https://cloudapi.wasync.app/api/mcp

Ese host es deliberado. La URL base de REST y todos los enlaces dirigidos a personas usan developers.wasync.app, pero la URL del servidor MCP, los endpoints de OAuth y los documentos /.well-known/… son identificadores de protocolo que los clientes ya tienen registrados: se quedan en cloudapi.wasync.app y deben coincidir byte a byte. No los "normalice".

Conectar un cliente

Para los clientes que leen un archivo de configuración (Claude Desktop, Cursor, …):

mcp config
{
  "mcpServers": {
    "wasync": {
      "url": "https://cloudapi.wasync.app/api/mcp"
    }
  }
}

La autenticación es OAuth 2.0 con PKCE y la gestiona el cliente: la primera llamada abre un navegador, usted aprueba y el cliente guarda los tokens. No hay ninguna clave que pegar.

Un cliente sin soporte nativo de MCP remoto puede conectarse mediante un puente por stdio:

npx mcp-remote https://cloudapi.wasync.app/api/mcp

Encontrarlo en el registro

WASync figura en el registro oficial de MCP como:

app.wasync/whatsapp

Los clientes y directorios que leen el registro pueden encontrar el servidor por su nombre, sin pegar la URL.

Las herramientas

ToolWhat it doesNeeds
list_whatsapp_connectionsLista las conexiones que la autorización puede usar, con su estado y el estado de la licencia. Todas las demás herramientas toman de aquí un id de conexión.read
get_whatsapp_connectionEl estado actual de una conexión: en línea o no, estado de la licencia y vencimiento. Solo lectura.read
read_whatsapp_messagesMensajes almacenados, del más reciente al más antiguo, de todas las conexiones compartidas o de una sola; paginados con nextCursor. No se envía nada y no se muestra confirmación de lectura.read
send_whatsapp_messageEnvía un mensaje de texto desde una conexión a un destinatario. La descripción de la herramienta indica al modelo que primero confirme destinatario y redacción: un mensaje de WhatsApp no se puede retirar.send
send_whatsapp_fileEnvía un archivo (documento, imagen, audio o video, hasta 5 MB) con un pie de foto opcional. Indique un enlace https directo en url (preferido) o base64 en data. Misma regla de confirmar primero: no se puede retirar.send
mark_whatsapp_messages_readMarca como leídos (doble check azul) los mensajes entrantes de un cliente, por número de teléfono o por id de mensaje.send

Equivalen a GET /connections, GET /connections/{id}, GET /messages, POST /messages (texto y multimedia) y POST /messages/read, y respetan los mismos scopes: un agente solo puede hacer lo que la autorización permite.

Enviar un archivo

send_whatsapp_file toma exactamente uno de url o data:

send_whatsapp_file arguments
{
  "connectionId": "conn_123",
  "to": "40700000000",
  "url": "https://files.example.com/offers/offer-2026.pdf",
  "filename": "offer-2026.pdf",
  "caption": "Here is the offer we discussed."
}
  • url debe ser un enlace https:// directo a un archivo que cualquier persona en internet pueda abrir sin iniciar sesión. WASync lo descarga (hasta 5 MB, 20 segundos) y toma el mimetype de la respuesta del servidor de archivos, salvo que usted indique uno. Se rechazan los enlaces que apuntan a redes privadas, al propio WASync o a una página web en lugar de a un archivo.
  • data es el archivo en base64 simple (sin prefijo data:), de 5 MB como máximo una vez decodificado, y en ese caso mimetype es obligatorio. Prefiera url: mover los bytes de un archivo por la conversación de un modelo es lento y costoso.
  • filename es lo que ve el destinatario (sin barras); caption es opcional, de hasta 1024 caracteres.

Los fallos llegan como errores de la herramienta, con un código estable al principio del mensaje: invalid_url, url_not_allowed, download_failed, file_too_large, invalid_media, o send_failed: <reason> cuando WASync rechazó el envío.

¿MCP o la API REST?

Use MCP cuando un agente supervisado por una persona deba poder acceder a WhatsApp: responder desde un cliente de chat, redactar respuestas, consultar datos. Use la API REST cuando su propio software controle el comportamiento y necesite webhooks, claves de idempotencia, archivos de más de 5 MB o aprovisionamiento; MCP no expone nada de eso.

Una autorización OAuth solo se emite sobre conexiones que ya existen, por lo que MCP no puede crear la primera conexión de un workspace. Créela primero con una API key: Inicio rápido.

¿Le resultó útil esta página?

On this page