Skip to main content
Glama

Africa's Talking Airtime MCP

非洲的谈话广播时间 MCP

铁匠徽章

该项目实现了一个模型上下文协议 (MCP) 服务器,管理通话时间交易。它提供了一套工具,用于查询账户余额、发送通话时间、查看近期充值交易、汇总近期充值金额以及统计特定电话号码的充值次数。该应用程序使用 SQLite 存储交易数据,并支持使用 Africa's Talking 通话时间服务的非洲国家/地区,并提供正确的电话号码格式。

描述

Africa's Talking Airtime MCP 服务器与 Africa's Talking Airtime API 集成,以方便通话时间转移。主要功能包括:

  • 向指定电话号码发送通话时间。

  • 将交易详细信息存储在 SQLite 数据库中。

  • 检索和汇总交易历史。

  • 检查 Africa's Talking 上的账户余额。

该应用程序支持非洲Talking Airtime服务支持的国家。

Related MCP server: telegram-mcp

安装

通过 Smithery 安装

要通过Smithery自动为 Claude Desktop 安装非洲的 Talking Airtime 服务器:

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

先决条件

  1. Python 3.10 或更高版本

  2. 安装 uv

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

按照以下步骤在本地设置并运行项目:

  1. 克隆存储库:

git clone https://github.com/nasoma/africastalking-airtime-mcp.git cd africastalking-airtime-mcp
  1. 通过运行以下命令设置虚拟环境并安装依赖项:

uv sync
  1. 一切顺利!

与AI工具一起使用

使用 Claude Desktop

将其添加到您的claude_desktop_config.json中:

{ "mcpServers": { "Airtime Server": { "command": "{{PATH_TO_UV}}", // Run `which uv` and place the output here "args": [ "--directory", "{{PATH_TO_PROJECT}}", // cd into the repo, run `pwd` and enter the output here "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 } } } }

配鹅

如果您想使用您喜欢的 LLM 并提供 API 密钥, Goose是一个不错的选择。

  • 安装 Goose。

  • 打开设置面板并添加自定义扩展(MCP 服务器)。

  • 为您的扩展命名。类型为 STDIO。

  • 添加命令。保存更改。鹅演示

  • 添加您的环境变量: usernameapi_keycurrency_codecountry

  • 保存更改。

鹅Demo2

工具说明

MCP 提供以下工具来管理通话时间交易:

  1. 检查余额

    • 描述:检索您的 Africa's Talking 帐户的当前通话时间余额。

    • 用法check_balance()

    • 输出:返回帐户余额(例如,“帐户余额:KES 1234.00”),如果无法获取余额,则返回错误消息。

  2. 加载播放时间

    • 描述:向指定的电话号码发送通话时间并将交易保存在数据库中。

    • 参数

      • phone_number :收件人的电话号码(例如“0712345678”或“+254712345678”)。

      • amount :要发送的空中时间量(例如 100)。

      • currency_code :货币代码(例如“KES”)。

    • 用法load_airtime("0712345678", 100.00, "KES")

    • 输出:确认成功(例如,“已成功向 +254712345678 发送 KES 100.00 通话时间”)或报告错误。

  3. 获取上次充值次数

    • 描述:从数据库中检索最近的N通话时间充值交易。

    • 参数

      • limit :要检索的交易数量(默认值:3)。

    • 用法get_last_topups(3)

    • 输出:列出最近的交易(例如,“最近 3 笔充值交易:...”)或表示未找到交易。

  4. 最后 n 次充值总数

    • 描述:计算最近N成功充值的总金额,确保它们使用相同的货币。

    • 参数

      • n :要汇总的交易数量(默认值:3)。

    • 用法sum_last_n_topups(3)

    • 输出:返回总数(例如,“最近 3 次成功充值的总和:KES 300.00”)或错误(如果货币不同)。

  5. count_topups_by_number

    • 描述:计算特定电话号码成功充值的次数。

    • 参数

      • phone_number :要查询的电话号码(例如“0712345678”)。

    • 用法count_topups_by_number("0712345678")

    • 输出:返回计数(例如,“成功充值至 +254712345678 的次数:5”)或错误。

示例提示

以下是用户可以根据可用工具向 AI 提出的示例问题或命令,以便与非洲的 Talking Airtime MCP 进行交互:

查看账户余额

  • 我的 Africa's Talking 账户余额是多少?

  • 你能告诉我当前余额吗?

  • 检查我的通话时间余额。

发送通话时间

  • 向 0712345678 发送 100 KES 通话时间。

  • 给我的 0712345678 充值 60。

  • 充值 50 奈拉至 +2348012345678。

  • 您能向 0755123456 充值 200 UGX 吗?

查看最近的充值

  • 显示最近 3 次通话时间交易。

  • 我最近充值了哪些金额?

  • 列出最近 5 次通话时间充值。

近期充值总额

  • 我最近 3 次充值的总金额是多少?

  • 将我最近 4 次通话时间交易的金额加起来。

  • 我最近 5 次充值一共汇了多少钱?

按电话号码计算充值次数

  • 我给0712345678充值过几次?

  • 计算 +254712345678 的充值金额。

  • 请告诉我有多少次成功充值到 0755123456。

笔记

  • 确保您的 Africa's Talking 帐户有足够的资金来发送通话时间。

  • 电话号码根据客户端或claude_desktop_config.json中设置的country变量自动格式化。

  • 初始化时,在项目目录中创建 SQLite 数据库( airtime_transactions.db )。

  • 最适合支持工具调用的模型,例如Claude 3.7 Sonnet 。如果您注重价格, GPT-4.1 Nano与 Goose 等客户端一起使用时是一个不错的、更便宜的选择。

🙏 致谢

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/nasoma/africastalking-airtime-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server