Африканское говорящее эфирное время MCP
Этот проект реализует сервер Model Context Protocol (MCP) для управления транзакциями эфирного времени с использованием Africa's Talking API . Он предоставляет набор инструментов для проверки баланса счета, отправки эфирного времени, просмотра последних транзакций пополнения, суммирования сумм последних пополнений и подсчета пополнений для определенного номера телефона. Приложение использует SQLite для хранения данных транзакций и поддерживает африканские страны, поддерживаемые Africa's Talking Airtime Service, с правильным форматированием телефонных номеров.
Описание
Сервер MCP Africa's Talking Airtime интегрируется с API Africa's Talking Airtime для упрощения передачи эфирного времени. Основные функции включают:
Отправка эфирного времени на указанные номера телефонов.
Хранение сведений о транзакциях в базе данных SQLite.
Извлечение и обобщение истории транзакций.
Проверка баланса счета на Africa's Talking.
Приложение поддерживает страны, в которых поддерживается услуга Africa Talking Airtime.
Related MCP server: telegram-mcp
Установка
Установка через Smithery
Чтобы автоматически установить Africa's Talking Airtime Server для Claude Desktop через Smithery :
Предпосылки
Python 3.10 или выше
Чтобы настроить и запустить проект локально, выполните следующие действия:
Клонируйте репозиторий:
Настройте виртуальную среду и установите зависимости, выполнив:
Вы готовы идти!
Использование с инструментами ИИ
С Клодом Десктопом
Добавьте это в ваш claude_desktop_config.json :
С гусем
Goose — хороший вариант, если вы хотите использовать предпочитаемую вами LLM и предоставить ключ API.
Установите Goose.
Откройте панель настроек и добавьте пользовательское расширение (MCP Server).
Дайте вашему расширению имя. Тип — STDIO.
Добавьте команду. Сохраните изменения.

Добавьте переменные среды:
username,api_key,currency_codeиcountry.Сохраните изменения.

Описания инструментов
MCP предоставляет следующие инструменты для управления транзакциями эфирного времени:
проверка_баланса :
Описание : Возвращает текущий баланс эфирного времени для вашего аккаунта Africa's Talking.
Использование :
check_balance()Вывод : Возвращает остаток на счете (например, «Остаток на счете: KES 1234.00») или сообщение об ошибке, если остаток не может быть получен.
load_airtime :
Описание : Отправляет эфирное время на указанный номер телефона и сохраняет транзакцию в базе данных.
Параметры :
phone_number: номер телефона получателя (например, «0712345678» или «+254712345678»).amount: количество отправленного эфирного времени (например, 100).currency_code: Код валюты (например, «KES»).
Использование :
load_airtime("0712345678", 100.00, "KES")Вывод : подтверждение успеха (например, «Успешно отправлено 100,00 KES на номер +254712345678») или сообщение об ошибке.
get_last_topups :
Описание : Извлекает последние
Nтранзакций пополнения счета из базы данных.Параметры :
limit: количество транзакций для извлечения (по умолчанию: 3).
Использование :
get_last_topups(3)Вывод : список последних транзакций (например, «Последние 3 транзакции пополнения: ...») или указание на отсутствие транзакций.
сумма_последних_n_пополнений :
Описание : Рассчитывает общую сумму последних
Nуспешных пополнений, гарантируя, что они используют одну и ту же валюту.Параметры :
n: Количество транзакций для суммирования (по умолчанию: 3).
Использование :
sum_last_n_topups(3)Вывод : Возвращает сумму (например, «Сумма последних 3 успешных пополнений: KES 300.00») или ошибку, если валюты различаются.
count_topups_by_number :
Описание : Подсчитывает количество успешных пополнений счета определенного номера телефона.
Параметры :
phone_number: номер телефона для запроса (например, «0712345678»).
Использование :
count_topups_by_number("0712345678")Вывод : Возвращает количество (например, «Количество успешных пополнений счета +254712345678: 5») или ошибку.
Примеры подсказок
Ниже приведены примеры вопросов или команд, которые пользователи могут задать ИИ для взаимодействия с MCP африканского Talking Airtime, на основе доступных инструментов:
Проверить баланс счета
Каков баланс моего счета Africa's Talking?
Можете ли вы показать мне текущий баланс?
Проверьте мой баланс эфирного времени.
Отправить эфирное время
Отправьте 100 KES эфирного времени на номер 0712345678.
Пополните мой счет 0712345678 на 60.
Пополните счет на 50 NGN на номер +2348012345678.
Можете ли вы пополнить счет на 200 UGX на номер 0755123456?
Просмотреть последние пополнения
Покажите мне последние 3 транзакции эфирного времени.
Каковы мои последние пополнения?
Перечислите последние 5 пополнений счета.
Сумма последних пополнений
Какова общая сумма моих последних трех пополнений?
Сложите суммы моих последних 4 транзакций по эфирному времени.
Какую сумму я отправил за последние 5 пополнений?
Подсчет пополнений по номеру телефона
Сколько раз я пополнял счет 0712345678?
Учитывайте пополнения на счете +254712345678.
Скажите, сколько успешных пополнений было совершено на номер 0755123456?
Примечания
Убедитесь, что на вашем счете Africa's Talking достаточно средств для отправки эфирного времени.
Номера телефонов автоматически форматируются на основе переменной
country, установленной в клиенте или вclaude_desktop_config.json.База данных SQLite (
airtime_transactions.db) создается в каталоге проекта при инициализации.Лучше всего работает с моделями, которые поддерживают вызов инструментов, например,
Claude 3.7 Sonnet. Если вы заботитесь о ценеGPT-4.1 Nano— хороший и более дешевый вариант при использовании с такими клиентами, как Goose.
🙏 Кредиты
API говорящей Африки Документация говорящей Африки .