Serveur MCP WhatsApp : envoyer et lire des messages WhatsApp depuis un agent IA
Un serveur MCP WhatsApp transforme la Cloud API en outils qu'un agent peut appeler : ouvrir une conversation, envoyer un message, lire l'inbox, envoyer un template approuvé. Il ne peut pas publier, parce que WhatsApp n'a pas de publications. Le difficile n'est pas la plomberie, c'est la fenêtre de 24 h. Tout ce qui suit a été vérifié le 21 octobre 2026.
Ce qu'un serveur MCP WhatsApp peut faire, et ne peut pas faire
WhatsApp est un canal de conversation, pas une surface de publication. La liste d'outils qu'un agent reçoit est donc courte et nette : lister les conversations, ouvrir une conversation par numéro de téléphone au format international, envoyer du texte, envoyer un template approuvé, lire les messages entrants. Il n'y a pas de publications, pas de commentaires et donc pas d'analytics. Tout serveur MCP WhatsApp qui te promet du reach et des impressions décrit quelque chose qui n'existe pas dans l'API.
Ce qu'il faut dessous, c'est un compte WhatsApp Business. Sur PlugKit, cette connexion passe par l'Embedded Signup de Meta : appelle GET /v1/connect/whatsapp?profileId=..., ouvre le authUrl qu'il renvoie, et la personne se connecte avec Facebook, choisit ou crée un WABA et vérifie le numéro. Les permissions demandées sont whatsapp_business_messaging et whatsapp_business_management.
Un piège de la doc PlugKit qui coûte une journée : connecte un vrai numéro. Un numéro de test Meta porte un token de 24 heures et s'arrête le lendemain matin, ce qui ressemble exactement à une intégration cassée.
La fenêtre de 24 h, vue par un agent
C'est la règle qui décide si le message de ton agent part ou non. Le texte libre n'est accepté que dans les 24 heures qui suivent le dernier message du contact vers toi. En dehors de cette fenêtre, le texte libre est rejeté et seul un template approuvé passe.
Pour un agent, ça a une conséquence pratique que la plupart des tutos sautent. L'agent ne peut pas savoir, à partir du texte d'une demande, si la fenêtre est ouverte ; il doit d'abord lire la conversation. La boucle utile est donc : lister la conversation, regarder l'horodatage du dernier message entrant, puis choisir entre texte libre et template. Un agent qui saute la lecture produira des échecs pleins d'assurance, et dire à quelqu'un que le message est parti alors qu'il a été refusé est pire qu'une erreur.
Les campagnes suivent la même fenêtre. Aucun réglage ne l'ouvre.
Templates : la seule sortie de la fenêtre
Un template est un texte pré-approuvé avec des placeholders numérotés. Liste ceux approuvés sur un compte avec GET /v1/accounts/{ACCOUNT_ID}/message-templates, puis envoie-la en passant template avec name, language et variables, qui remplissent {{1}}, {{2}} dans l'ordre. Le nom et la langue doivent correspondre exactement, et components prend des composants Meta bruts quand tu as besoin d'un header ou de boutons.
Deux choses à dire explicitement à ton agent. Il ne peut pas inventer un template, parce que l'approbation se passe en dehors de ton code. Et il ne doit pas choisir un template dont la catégorie ne correspond pas à l'intention : la tarification au message de Meta facture par catégorie, donc envoyer un template marketing pour faire le travail d'un utility est un coût que tu t'infliges.
Ce que coûtent les messages
Meta est passé à la tarification au message le 1er juillet 2025, en remplacement de l'ancien modèle par conversation. Tu paies à la livraison, selon la catégorie du message et l'indicatif pays du destinataire. Les messages des utilisateurs vers toi sont gratuits.
| Catégorie | Nécessite un template approuvé | Envoyable en dehors de la fenêtre de 24 h | Facturé |
|---|---|---|---|
| Marketing | oui | oui | oui |
| Utility | oui | oui | oui, et depuis le 1er octobre 2026 aussi dans une fenêtre de service ouverte |
| Authentication | oui | oui | oui |
| Service | non | non | les 1 000 premiers par numéro professionnel et par mois ne sont pas facturés depuis le 1er octobre 2026, ensuite oui |
| Meta Business Agent | non | non | oui, par token plutôt que par message |
Trois dates à garder en tête : la tarification au message depuis le 1er juillet 2025 ; la catégorie Meta Business Agent ajoutée le 1er juillet 2026 ; et le 1er octobre 2026, qui a apporté les 1 000 messages de service non facturés par numéro et par mois, sans report, plus la facturation des messages utility envoyés dans une fenêtre de service ouverte. Meta ne change ses tarifs que le premier jour d'un trimestre, ce qui en fait une des factures les plus faciles à prévoir.
Un point positif à exploiter : quand une personne t'écrit depuis une pub Click to WhatsApp sur Android ou iOS et que tu réponds dans la fenêtre de service, une fenêtre de point d'entrée gratuit de 7 jours au plus s'ouvre, pendant laquelle les messages marketing, utility, authentication et service ne sont pas facturés. Les messages Meta Business Agent le sont toujours. La grille complète est dans Tarifs de l'API WhatsApp Business.
Pourquoi automatiser WhatsApp Web est le mauvais raccourci
Cherche un serveur MCP WhatsApp et la plupart de ce que tu trouves pilote WhatsApp Web ou une bibliothèque cliente reverse-engineerée, en général en appariant un numéro personnel par QR code. La démo est superbe. Ça veut aussi dire qu'un client non officiel envoie du trafic au nom de ton numéro, ce qui est la route directe pour le perdre, et quand il part tu perds le numéro que tes clients ont déjà. Il n'y a pas de file de recours pour ça.
La Cloud API officielle coûte de l'argent au message et t'oblige à faire approuver des templates. Ces deux frictions sont ce que tu achètes : le numéro reste le tien. Le même raisonnement vaut sur toutes les plateformes, et la version large est dans l'automatisation WhatsApp.
Le brancher à Claude, ChatGPT ou Cursor
Le serveur MCP hébergé de PlugKit couvre WhatsApp en même temps que les plateformes de publication, donc un seul endpoint donne les deux à un agent. Il est à https://api.plugkit.co/mcp en Streamable HTTP, avec 103 tools et trois workflows prêts à l'emploi au 21 octobre 2026. Dans Claude Code :
claude mcp add -t http plugkit https://api.plugkit.co/mcp
Dans les apps Claude, Customize puis Connectors puis Add puis un connecteur personnalisé, et colle la même URL. ChatGPT l'accepte en mode développeur. Cursor et VS Code prennent un lien en un clic ou quelques lignes de JSON. L'authentification est OAuth 2.1 avec PKCE et sans client secret, avec mcp:read pour lire les conversations et mcp:write pour envoyer. Commence sur mcp:read pendant une semaine : lire une inbox est réversible, envoyer un message WhatsApp à un client ne l'est pas.
Si les messages entrants s'arrêtent, le correctif est POST /v1/connect/whatsapp/{ACCOUNT_ID}/subscribe-webhooks, qui réabonne sans reconnecter. Quand les envois échouent, lis GET /v1/accounts/{ACCOUNT_ID} pour isActive, needsReconnection et disconnectedReason ; Meta peut refuser de servir un numéro alors que le token est parfaitement valide, et ça remonte comme une erreur Meta, pas comme une erreur d'auth.
PlugKit, c'est $49 par mois pour 5 comptes connectés, résiliable à tout moment, avec 7 jours gratuits sans carte et un compte connecté pendant l'essai. Les frais de messages WhatsApp sont ceux de Meta et sont facturés par Meta, pas répercutés par PlugKit. Pour le même schéma sur des plateformes qui ont, elles, des publications, vois le serveur MCP Instagram et le serveur MCP LinkedIn.
FAQ
Est-ce que Claude peut envoyer des messages WhatsApp ?
Oui, via un serveur MCP connecté à la WhatsApp Cloud API. Claude n'a aucun accès WhatsApp en propre. Une fois le serveur ajouté, envoyer un message est un appel d'outil, soumis aux mêmes règles de fenêtre de 24 h et de template que n'importe quel autre client de la Cloud API.
Est-ce qu'il existe un serveur MCP WhatsApp officiel de Meta ?
Non. Meta publie la Cloud API ; la couche MCP est construite par des tiers par-dessus. C'est pour ça qu'il vaut la peine de vérifier si un serveur donné utilise la Cloud API ou pilote WhatsApp Web, parce que seul le premier est autorisé.
Pourquoi le message WhatsApp de mon agent a été rejeté ?
Presque toujours la fenêtre de 24 h. Si le contact ne t'a pas écrit dans les 24 dernières heures, le texte libre est refusé et il te faut un template approuvé. La deuxième cause la plus fréquente est un nom ou une langue de template qui ne correspond pas exactement.
Est-ce qu'un serveur MCP WhatsApp peut lire mon historique de messages ?
Il peut lire les conversations arrivées par le numéro professionnel connecté, livrées par webhook. Il ne peut pas importer l'historique d'un compte WhatsApp personnel, et tout ce qui prétend le faire pilote un client non officiel.
Est-ce que WhatsApp donne des analytics à un agent ?
Non. Il n'y a pas de publications sur WhatsApp, donc pas de métriques de publication. Les états de livraison et de lecture existent au niveau du message, mais reach, impressions et engagement ne s'appliquent pas à ce canal.
Un plug pour chaque plateforme que ton agent touche
49 $ par mois pour 5 comptes connectés, résiliable à tout moment. Toutes les fonctionnalités dans tous les forfaits.
Récupère ta clé API →