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 o Claude, o Cursor ou qualquer cliente MCP ao servidor remoto da WASync. Seis ferramentas, sem código do seu lado.

A WASync mantém um servidor MCP remoto sobre Streamable HTTP. Adicione-o a um cliente MCP e o agente ganha ferramentas de WhatsApp, sem código do seu lado.

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

Esse host é intencional. A URL base da REST e todos os links voltados para pessoas usam developers.wasync.app, mas a URL do servidor MCP, os endpoints OAuth e os documentos /.well-known/… são identificadores de protocolo que os clientes já registraram — eles permanecem em cloudapi.wasync.app e devem coincidir byte a byte. Não os "normalize".

Conectar um cliente

Para clientes que leem um arquivo de configuração (Claude Desktop, Cursor, …):

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

A autenticação é OAuth 2.0 com PKCE, tratada pelo cliente: a primeira chamada abre um navegador, você aprova e o cliente guarda os tokens. Não há chave para colar.

Um cliente sem suporte nativo a MCP remoto pode fazer a ponte via stdio:

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

Encontre no registro

A WASync está listada no MCP Registry oficial como:

app.wasync/whatsapp

Clientes e diretórios que leem o registro podem encontrar o servidor pelo nome, em vez de colar a URL.

As ferramentas

ToolWhat it doesNeeds
list_whatsapp_connectionsLista as conexões que a autorização pode usar, com status e estado da licença. Todas as outras ferramentas recebem um id de conexão obtido aqui.read
get_whatsapp_connectionO estado atual de uma conexão: online ou não, status e validade da licença. Somente leitura.read
read_whatsapp_messagesMensagens armazenadas, da mais recente para a mais antiga, em todas as conexões compartilhadas ou em uma delas; paginadas com nextCursor. Nada é enviado e nenhuma confirmação de leitura é exibida.read
send_whatsapp_messageEnvia uma mensagem de texto de uma conexão para um destinatário. A descrição da ferramenta instrui o modelo a confirmar primeiro o destinatário e o texto: uma mensagem do WhatsApp não pode ser recolhida.send
send_whatsapp_fileEnvia um arquivo (documento, imagem, áudio ou vídeo, até 5 MB) com legenda opcional. Informe um link https direto em url (preferível) ou base64 em data. Mesma regra de confirmar primeiro: não é possível recolher o envio.send
mark_whatsapp_messages_readMarca como lidas (dois vistos azuis) as mensagens recebidas de um cliente, por número de telefone ou por id de mensagem.send

Elas correspondem a GET /connections, GET /connections/{id}, GET /messages, POST /messages (texto e mídia) e POST /messages/read, e obedecem aos mesmos escopos — um agente só pode fazer o que a autorização permite.

Enviar um arquivo

send_whatsapp_file recebe exatamente um entre url e 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 deve ser um link https:// direto para um arquivo que qualquer pessoa na internet possa abrir sem fazer login. A WASync baixa o arquivo (até 5 MB, 20 segundos) e obtém o mimetype da resposta do servidor de arquivos, a menos que você informe um. Links que apontam para redes privadas, para a própria WASync ou para uma página web em vez de um arquivo são recusados.
  • data é o arquivo em base64 simples (sem prefixo data:), com no máximo 5 MB decodificado, e nesse caso mimetype é obrigatório. Prefira url: passar os bytes de um arquivo pela conversa de um modelo é lento e caro.
  • filename é o que o destinatário vê (sem barras); caption é opcional, com até 1024 caracteres.

As falhas voltam como erros da ferramenta, com um código estável no início da mensagem: invalid_url, url_not_allowed, download_failed, file_too_large, invalid_media, ou send_failed: <reason> quando a WASync recusou o envio.

MCP ou a REST API?

Use o MCP quando um agente supervisionado por uma pessoa precisar acessar o WhatsApp: responder a partir de um cliente de chat, redigir respostas, consultar informações. Use a REST API quando o seu próprio software controla o comportamento e precisa de webhooks, chaves de idempotência, arquivos maiores que 5 MB ou provisionamento — nada disso o MCP oferece.

Uma autorização OAuth só é emitida sobre conexões que já existem, então o MCP não consegue criar a primeira conexão de um workspace. Crie-a antes com uma API key: Início rápido.

Esta página foi útil?

On this page