MCP
engagelab-sms-mcp est un serveur MCP (Model Context Protocol) qui permet aux assistants IA d’envoyer des SMS via la plateforme EngageLab. Une fois ajouté à un client compatible MCP (tel que Cursor, Claude Desktop, etc.), l’IA peut envoyer des SMS basés sur des modèles en votre nom.
Prérequis
- Node.js 18+
- Un compte EngageLab avec des identifiants API SMS (
dev_keyetdev_secret) - Au moins un modèle SMS approuvé
Astuce : Les identifiants API peuvent être créés et gérés sur la page Clés API de la console EngageLab.
Configuration
Cursor
Allez dans Paramètres > MCP, cliquez sur Ajouter un nouveau serveur MCP, puis collez la configuration suivante :
{
"mcpServers": {
"engagelab-sms": {
"command": "npx",
"args": ["-y", "engagelab-sms-mcp"],
"env": {
"ENGAGELAB_DEV_KEY": "<your_dev_key>",
"ENGAGELAB_DEV_SECRET": "<your_dev_secret>"
}
}
}
}
Remplacez <your_dev_key> et <your_dev_secret> par les identifiants réels obtenus dans la console EngageLab.
Claude Desktop
Ouvrez Paramètres > Développeur > Modifier la configuration et ajoutez ce qui suit à mcpServers :
{
"mcpServers": {
"engagelab-sms": {
"command": "npx",
"args": ["-y", "engagelab-sms-mcp"],
"env": {
"ENGAGELAB_DEV_KEY": "<your_dev_key>",
"ENGAGELAB_DEV_SECRET": "<your_dev_secret>"
}
}
}
}
Autres clients MCP
Tout client MCP prenant en charge le transport stdio peut utiliser ce serveur. Définissez la commande sur npx -y engagelab-sms-mcp et transmettez les variables d’environnement requises.
Outils disponibles
send_sms
Envoie des SMS via EngageLab à l’aide d’un modèle préapprouvé.
Paramètres de la requête :
| Champ | Type | Obligatoire | Description |
|---|---|---|---|
| to | string[] | Oui | Liste des numéros de téléphone cibles (format international recommandé, ex. +8618700001111) |
| template.id | string | Oui | ID du modèle SMS EngageLab approuvé |
| template.params | object | Oui | Valeurs des variables du modèle, ex. {"code": "123456"} |
Exemple de requête :
{
"to": ["+8618700001111"],
"template": {
"id": "your-template-id",
"params": {
"code": "123456"
}
}
}
Paramètres de la réponse :
| Champ | Type | Description |
|---|---|---|
| success | boolean | Indique si la requête a été acceptée |
| plan_id | string | ID de plan EngageLab pour le suivi |
| total_count | number | Nombre total de destinataires soumis |
| accepted_count | number | Nombre de destinataires acceptés pour l’envoi |
| message_id | string | Identifiant du message (si disponible) |
| message | string | Description du statut ou de l’erreur |
| code | number | Code de réponse EngageLab (0 = succès) |
Variables d’environnement
| Variable | Obligatoire | Valeur par défaut | Description |
|---|---|---|---|
| ENGAGELAB_DEV_KEY | Oui | — | Clé dev EngageLab |
| ENGAGELAB_DEV_SECRET | Oui | — | Secret dev EngageLab |
| ENGAGELAB_BASE_URL | Non | https://smsapi.engagelab.com |
URL de base de l’API |
| ENGAGELAB_REQUEST_TIMEOUT_MS | Non | 10000 |
Délai d’expiration de la requête en millisecondes |
| ENGAGELAB_MAX_RETRIES | Non | 1 |
Nombre maximal de tentatives en cas d’échec |
Dépannage
Le serveur ne démarre pas avec « Missing required environment variable »
- Vérifiez que
ENGAGELAB_DEV_KEYetENGAGELAB_DEV_SECRETsont correctement définis dans le blocenvde la configuration de votre client MCP.
send_sms renvoie le code d’erreur 3002 (« invalid template id format »)
- Vérifiez que l’ID du modèle correspond à un modèle approuvé dans la console EngageLab.
send_sms renvoie des erreurs sur les paramètres du modèle
- Confirmez que les clés dans
template.paramscorrespondent exactement aux noms de variables définis dans votre modèle EngageLab.
SMS non reçu
- Utilisez le format international pour les numéros (ex.
+8618700001111). - Vérifiez que le modèle est approuvé et non suspendu.
