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

Collega Claude, Cursor o qualsiasi client MCP al server WASync remoto. Sei strumenti, nessun codice da scrivere da parte tua.

WASync mette a disposizione un server MCP remoto su Streamable HTTP. Lo aggiunga a un client MCP e l'agente ottiene gli strumenti WhatsApp, senza alcun codice da scrivere da parte Sua.

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

Quell'host è voluto. L'URL di base REST e ogni link rivolto agli utenti usano developers.wasync.app, ma l'URL del server MCP, gli endpoint OAuth e i documenti /.well-known/… sono identificatori di protocollo che i client hanno già registrato: restano su cloudapi.wasync.app e devono corrispondere byte per byte. Non li «normalizzi».

Collegare un client

Per i client che leggono un file di configurazione (Claude Desktop, Cursor, …):

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

L'autenticazione è OAuth 2.0 con PKCE, gestita dal client: la prima chiamata apre un browser, Lei approva e il client memorizza i token. Non c'è nessuna chiave da incollare.

Un client senza supporto nativo per MCP remoto può usare un bridge su stdio:

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

Trovarlo nel registro

WASync è presente nel registro ufficiale MCP Registry con questo nome:

app.wasync/whatsapp

I client e le directory che leggono il registro possono trovare il server per nome, senza incollare l'URL.

Gli strumenti

ToolCosa faRichiede
list_whatsapp_connectionsElenca le connessioni che l'autorizzazione può usare, con stato e stato della licenza. Ogni altro strumento richiede un id di connessione preso da qui.read
get_whatsapp_connectionLo stato attuale di una connessione: online o no, stato della licenza e scadenza. Sola lettura.read
read_whatsapp_messagesI messaggi archiviati, dal più recente, su tutte le connessioni condivise o su una sola; paginati con nextCursor. Non viene inviato nulla e non compare alcuna conferma di lettura.read
send_whatsapp_messageInvia un messaggio di testo da una connessione a un destinatario. La descrizione dello strumento indica al modello di confermare prima destinatario e testo: un messaggio WhatsApp non può essere ritirato.send
send_whatsapp_fileInvia un file (documento, immagine, audio o video, fino a 5 MB) con una didascalia facoltativa. Indichi un link https diretto in url (consigliato) oppure base64 in data. Stessa regola della conferma preventiva: non può essere ritirato.send
mark_whatsapp_messages_readSegna come letti (spunte blu) i messaggi in arrivo di un cliente, tramite numero di telefono o id di un messaggio.send

Corrispondono a GET /connections, GET /connections/{id}, GET /messages, POST /messages (testo e media) e POST /messages/read, e rispettano gli stessi scope: un agente può fare solo ciò che l'autorizzazione consente.

Inviare un file

send_whatsapp_file accetta esattamente uno tra 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 essere un link https:// diretto a un file che chiunque su internet possa aprire senza effettuare l'accesso. WASync lo scarica (fino a 5 MB, 20 secondi) e ricava il mimetype dalla risposta del server dei file, a meno che Lei non ne indichi uno. I link che puntano a reti private, a WASync stesso o a una pagina web invece che a un file vengono rifiutati.
  • data è il file in base64 semplice (senza prefisso data:), al massimo 5 MB una volta decodificato; in questo caso mimetype è obbligatorio. Preferisca url: far passare i byte di un file nella conversazione di un modello è lento e costoso.
  • filename è ciò che vede il destinatario (senza barre); caption è facoltativa, fino a 1024 caratteri.

Gli errori tornano come errori dello strumento, con un codice stabile all'inizio del messaggio: invalid_url, url_not_allowed, download_failed, file_too_large, invalid_media, oppure send_failed: <reason> quando WASync ha rifiutato l'invio.

MCP o API REST?

Usi MCP quando un agente supervisionato da una persona deve poter raggiungere WhatsApp: rispondere da un client di chat, preparare bozze di risposta, cercare informazioni. Usi l'API REST quando è il Suo software a gestire il comportamento e servono webhook, chiavi di idempotenza, file più grandi di 5 MB o provisioning: nulla di tutto ciò è disponibile tramite MCP.

Un'autorizzazione OAuth viene rilasciata solo su connessioni già esistenti, quindi MCP non può creare la prima connessione di un workspace. La crei prima con una API key: Quickstart.

Questa pagina è stata utile?

On this page