Serveur MCP
Le serveur Model Context Protocol de seven permet à des assistants IA comme Claude Desktop, Claude Code et Cursor d'interagir directement avec l'API seven.io. Il expose les SMS, le RCS, la voix, les recherches, les contacts et la gestion de compte sous forme de plus de 40 outils répartis en 12 catégories.
Le serveur est distribué sous forme de paquet npm @seven.io/mcp et s'exécute en local via npx sur le transport stdio de MCP. Le code source se trouve sur GitHub.
Installation
npm install -g @seven.io/mcp
L'installation globale n'est pas obligatoire — npx @seven.io/mcp télécharge la dernière version à la demande lorsque le client MCP démarre le serveur.
Authentification
Le serveur prend en charge deux méthodes d'authentification. OAuth 2.0 avec PKCE est recommandé — il offre un rafraîchissement automatique des jetons, des scopes fins et stocke les jetons en sécurité dans le trousseau de votre système d'exploitation. Si les deux méthodes sont configurées, OAuth est prioritaire.
Option 1 : OAuth 2.0 (recommandé)
Exécutez la commande de connexion une seule fois. Elle ouvre votre navigateur, demande les scopes nécessaires (SMS, Voix, RCS, …) et stocke les jetons.
npx @seven.io/mcp login
Autres commandes CLI :
# Vérifier votre statut de connexion
npx @seven.io/mcp status
# Supprimer les jetons stockés
npx @seven.io/mcp logout
Option 2 : clé API (héritée)
Définissez la variable d'environnement SEVEN_API_KEY. Créez votre clé dans le tableau de bord seven.io.
export SEVEN_API_KEY="votre-cle-api"
Configurations headless ou distantes
Le flux de connexion OAuth nécessite un navigateur sur la même machine, capable d'atteindre 127.0.0.1:7177 / 9437 / 8659. Si vous exécutez le serveur MCP sur un système sans interface graphique ou via SSH sans redirection de ports, repliez-vous sur la clé API (Option 2) — cette voie ne nécessite pas de navigateur.
Démarrage rapide
Ajoutez le serveur à la configuration de votre client MCP et redémarrez le client.
Claude Desktop
Modifiez votre fichier claude_desktop_config.json :
| OS | Chemin |
|---|---|
| macOS | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Windows | %APPDATA%\Claude\claude_desktop_config.json |
| Linux | ~/.config/Claude/claude_desktop_config.json |
Avec OAuth (recommandé) — exécutez d'abord npx @seven.io/mcp login :
{
"mcpServers": {
"seven": {
"command": "npx",
"args": ["@seven.io/mcp"]
}
}
}
Avec une clé API :
{
"mcpServers": {
"seven": {
"command": "npx",
"args": ["@seven.io/mcp"],
"env": {
"SEVEN_API_KEY": "votre-cle-api"
}
}
}
}
Claude Code
claude mcp add seven npx @seven.io/mcp
Cursor
Ajoutez le serveur au fichier .cursor/mcp.json de votre projet :
{
"mcpServers": {
"seven": {
"command": "npx",
"args": ["@seven.io/mcp"]
}
}
}
Outils disponibles
Le serveur fournit plus de 40 outils regroupés par fonctionnalité.
Messagerie
| Outil | Description |
|---|---|
send_sms | Envoyer un SMS |
delete_sms | Supprimer un SMS programmé |
send_rcs | Envoyer un message RCS |
delete_rcs | Supprimer un message RCS |
rcs_events | Gérer les événements RCS |
send_voice | Lancer un appel vocal de synthèse vocale |
hangup_voice | Mettre fin à un appel vocal en cours |
Compte
| Outil | Description |
|---|---|
get_balance | Consulter le solde du compte |
get_pricing | Obtenir les tarifs par pays |
get_analytics | Consulter les statistiques du compte |
Recherche
| Outil | Description |
|---|---|
lookup_format | Valider le format d'un numéro de téléphone |
lookup_hlr | Home Location Register (réseau, roaming) |
lookup_mnp | Mobile Number Portability (opérateur) |
lookup_cnam | Recherche du nom de l'appelant |
lookup_rcs | Vérifier si un numéro prend en charge RCS |
Statut et journal
| Outil | Description |
|---|---|
get_status | Vérifier le statut de livraison |
get_logbook_sent | Consulter les messages envoyés |
get_logbook_received | Consulter les SMS reçus |
get_logbook_voice | Consulter l'historique des appels |
Numéros de téléphone
| Outil | Description |
|---|---|
get_available_numbers | Lister les numéros disponibles à la commande |
order_number | Acheter un numéro de téléphone |
get_active_numbers | Lister vos numéros actifs |
get_number | Obtenir les détails d'un numéro |
update_number | Mettre à jour la configuration d'un numéro |
delete_number | Résilier un numéro |
Contacts
| Outil | Description |
|---|---|
list_contacts | Lister tous les contacts |
create_contact | Créer un nouveau contact |
get_contact | Obtenir un contact par ID |
update_contact | Mettre à jour un contact |
delete_contact | Supprimer un contact |
Groupes
| Outil | Description |
|---|---|
list_groups | Lister tous les groupes |
create_group | Créer un nouveau groupe |
get_group | Obtenir un groupe par ID |
update_group | Mettre à jour un groupe |
delete_group | Supprimer un groupe |
Sous-comptes
| Outil | Description |
|---|---|
list_subaccounts | Lister tous les sous-comptes |
create_subaccount | Créer un nouveau sous-compte |
update_subaccount | Mettre à jour un sous-compte |
transfer_credits | Transférer des crédits vers un sous-compte |
delete_subaccount | Supprimer un sous-compte |
Webhooks
| Outil | Description |
|---|---|
list_webhooks | Lister les webhooks enregistrés |
create_webhook | Enregistrer un nouveau webhook |
delete_webhook | Supprimer un webhook |
Expéditeur
| Outil | Description |
|---|---|
validate_sender | Valider un identifiant d'expéditeur |
Exemples
Une fois le serveur connecté, vous pouvez interroger l'assistant en langage naturel. Le client MCP choisit automatiquement le bon outil.
Envoyer un SMS :
Envoie un SMS au +49170123456789 avec le texte 'Commande expédiée — suivi sur example.com/t/abc123'.
L'assistant appelle send_sms.
Vérifier le solde :
Quel est le solde de mon compte seven.io ?
L'assistant appelle get_balance.
Recherche d'opérateur et vérification RCS :
Trouve l'opérateur du +49170123456789 et dis-moi si le numéro prend en charge RCS.
L'assistant enchaîne lookup_mnp et lookup_rcs.
Journalisation de débogage
Définissez SEVEN_LOG_FILE pour enregistrer chaque requête et réponse API dans un fichier. Utile lorsqu'un appel d'outil ne se comporte pas comme prévu.
{
"mcpServers": {
"seven": {
"command": "npx",
"args": ["@seven.io/mcp"],
"env": {
"SEVEN_API_KEY": "votre-cle-api",
"SEVEN_LOG_FILE": "/tmp/mcp-seven-debug.log"
}
}
}
}
Suivez ensuite le fichier de log en direct :
tail -f /tmp/mcp-seven-debug.log