Le temps d'antenne parlant de l'Afrique MCP - MCP Server sécurisé par ALMC Security 2025

Le temps d'antenne parlant de l'Afrique MCP

Voir sur GitHub

MseeP.ai Security Assessment Badge

Africa's Talking Airtime MCP

smithery badge

Ce projet met en œuvre un serveur MCP (Model Context Protocol) pour gérer les transactions de temps d'antenne à l'aide de l'API d'Africa's Talking. Il fournit un ensemble d'outils permettant de vérifier le solde du compte, d'envoyer du temps d'antenne, de visualiser les transactions de rechargement récentes, d'additionner les montants des recharges récentes et de compter les recharges pour un numéro de téléphone spécifique. L'application utilise SQLite pour stocker les données de transaction et prend en charge les pays africains supportés par le service de temps d'antenne d'Africa's Talking avec un formatage correct des numéros de téléphone.

Verified on MseeP

Description de l'application

Le serveur MCP d'Africa's Talking Air time s'intègre à l'API d'Africa's Talking Airtime pour faciliter les transferts de temps d'antenne. Les principales caractéristiques sont les suivantes

  • Envoi de temps d'antenne à des numéros de téléphone spécifiés.
  • Stockage des détails de la transaction dans une base de données SQLite.
  • Récupération et résumé de l'historique des transactions.
  • Vérification du solde du compte sur Africa's Talking.

L'application est compatible avec les pays où le service de temps d'antenne d'Africa's Talking est pris en charge.

Installation de l'application

Installation via Smithery

Pour installer Africa's Talking Airtime Server pour Claude Desktop automatiquement via Smithery:

npx -y @smithery/cli install @nasoma/africastalking-airtime-mcp --client claude

Pré-requis

  1. Python 3.10 ou supérieur

  2. Installer uv

curl -LsSf https://astral.sh/uv/install.sh | sh

Suivez ces étapes pour configurer et exécuter le projet localement :

  1. Clonez le dépôt :
git clone https://github.com/nasoma/africastalking-airtime-mcp.git cd africastalking-airtime-mcp
  1. Configurez l'environnement virtuel et installez les dépendances en exécutant :
uv sync
  1. Vous êtes prêt à partir !

Utilisation avec les outils d'IA

Avec Claude Desktop

Ajoutez ceci à votre fichier claude_desktop_config.json:

{ "mcpServers" : { "Airtime Server" : { "command" : "{{PATH_TO_UV}}", // Exécutez `which uv` et placez la sortie ici "args" : ["--directory", "{{PATH_TO_PROJECT}}", // cd dans le repo, exécuter `pwd` et entrer la sortie ici "run", "main.py" ], "env" : { "username" : "your_africastalking_username", "api_key" : "your_africastalking_api_key", "country" : "your_country", # e.g kenya, uganda, dr congo, rwanda, south africa "currency_code" : "currency-code" # e.g. KES, UGX, NGN } } }

Avec Goose

Goose est une bonne option si vous souhaitez utiliser votre LLM préféré et fournir une clé API.

  • Installez Goose.
  • Ouvrez le panneau de configuration et ajoutez une extension personnalisée (MCP Server).
  • Donnez un nom à votre extension. Le type est STDIO.
  • Ajoutez la commande. Enregistrez les modificationsGoose Demo
  • Ajoutez vos variables d'environnement : username, api_key, currency_code et country.
  • Enregistrez les modifications.

Goose Demo2

Descriptions des outils

Le MCP fournit les outils suivants pour gérer les transactions de temps de communication :

  1. check_balance:

    • Description: Récupère le solde actuel de temps d'antenne pour le compte Talking de votre Afrique.
    • Utilisation: check_balance()
    • Résultat: Renvoie le solde du compte (par exemple, " Account Balance : KES 1234.00 ") ou un message d'erreur si le solde ne peut être obtenu.
  2. load_airtime:

    • Description: Envoie du temps d'antenne à un numéro de téléphone spécifié et enregistre la transaction dans la base de données.
    • Paramètres
      • phone_number: Le numéro de téléphone du destinataire (par exemple, "0712345678" ou "+254712345678").
      • montant: Le montant de temps de communication à envoyer (par exemple, 100).
      • code_devise: Le code de la devise (par exemple, "KES").
    • Utilisation: load_airtime("0712345678", 100.00, "KES")
    • Sortie: Confirme le succès (par exemple, "Successfully sent KES 100.00 airtime to +254712345678") ou signale une erreur.
  3. get_last_topups:

    • Description: Récupère les N dernières transactions de rechargement de temps de communication dans la base de données.
    • Paramètres
      • limit: Nombre de transactions à récupérer (par défaut : 3).
    • Utilisation: get_last_topups(3)
    • Résultat: Liste les transactions récentes (par exemple, "Last 3 top-up transactions : ...") ou indique qu'aucune transaction n'a été trouvée.
  4. sum_last_n_topups:

    • Description: Calcule le montant total des N derniers rechargements réussis, en s'assurant qu'ils utilisent la même devise.
    • Paramètres
      • n: Nombre de transactions à additionner (par défaut : 3).
    • Utilisation: sum_last_n_topups(3)
    • Résultat: Renvoie la somme (par exemple, "Sum of last 3 successful top-ups : KES 300.00") ou une erreur si les devises diffèrent.
  5. count_topups_by_number:

    • Description: Compte le nombre de recharges réussies vers un numéro de téléphone spécifique.
    • Paramètres
      • numéro_de_téléphone: Le numéro de téléphone à interroger (par exemple, "0712345678").
    • Usage: count_topups_by_number("0712345678")
    • Résultat: Renvoie le nombre (par exemple, "Number of successful top-ups to +254712345678 : 5") ou une erreur.

Exemples d'invites

Voici des exemples de questions ou de commandes que les utilisateurs peuvent poser à l'IA pour interagir avec le MCP de temps d'antenne parlant de l'Afrique, en fonction des outils disponibles :

Vérifier le solde du compte

  • Quel est le solde de mon compte Africa's Talking ?
  • Pouvez-vous me montrer le solde actuel ?
  • Vérifier mon solde de temps d'antenne.

Envoyer du temps d'antenne

  • Envoyez 100 KES de temps d'antenne à 0712345678.
  • Rechargez mon 0712345678 avec 60.
  • Chargez 50 NGN sur +2348012345678.
  • Pouvez-vous recharger 200 UGX sur 0755123456 ?

Voir les recharges récentes

  • Affichez les 3 dernières transactions de temps de communication.
  • Quels sont mes rechargements les plus récents ?
  • Listez les 5 derniers rechargements de temps de communication.

Somme des rechargements récents

  • Quel est le total de mes 3 derniers rechargements ?
  • Additionnez les montants de mes 4 dernières transactions de temps de communication.
  • Quel est le montant de mes 5 dernières recharges ?

Compter les recharges par numéro de téléphone

  • Combien de fois ai-je rechargé 0712345678 ?
  • Comptez les recharges jusqu'à +254712345678.
  • Dites-moi combien de recharges ont été effectuées avec succès vers 0755123456.

Notes

  • Assurez-vous que votre compte Africa's Talking est approvisionné pour envoyer du temps d'antenne.
  • Les numéros de téléphone sont automatiquement formatés en fonction de la variable pays définie dans le client ou dans claude_desktop_config.json.
  • La base de données SQLite(airtime_transactions.db) est créée dans le répertoire du projet lors de l'initialisation.
  • Fonctionne mieux avec les modèles qui supportent l'appel d'outil, par exemple Claude 3.7 Sonnet. Si vous êtes soucieux du prix, GPT-4.1 Nano est une bonne option, moins chère, lorsqu'elle est utilisée avec des clients comme Goose.

🙏 Crédits

Liés dans Communication - MCP Servers sécurisés

ServeurRésuméActions
BGG MCPVoir
AgentMailLe serveur AgentMail MCP fournit des outils pour l'API AgentMail.Voir
Communication avec les agents Serveur MCPエージェント間のルームベースコミュニケーションを実現するModel Context Protocol (MCP) サーバーVoir
Claude MCP SlackUne action GitHub autonome qui fournit la fonctionnalité de serveur Slack MCP (Model Context Protoco...Voir
Serveur A2A MCPVoir
ELEMENT.FMSnippets Groupes ProjetsVoir