Skip to main content
Glama
nasoma

Africa's Talking Airtime MCP

get_last_topups

Retrieve recent airtime top-up transactions from Africa's Talking database to monitor payment history and track recharge patterns across supported countries.

Instructions

Retrieves the last N top-up transactions from the database.

Args: limit (int, optional): The number of recent transactions to fetch. Defaults to 3. Returns: str: A formatted string listing the last N transactions or a message if no transactions are found.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNo

Implementation Reference

  • main.py:174-215 (handler)
    The main handler function for the 'get_last_topups' tool. It is decorated with @mcp.tool(), which registers it with the MCP server. The function queries the SQLite database for the last 'limit' (default 3) top-up transactions, formats them nicely, and returns as a string. Handles errors gracefully.
    @mcp.tool() async def get_last_topups(limit: int = 3) -> str: """Retrieves the last N top-up transactions from the database. Args: limit (int, optional): The number of recent transactions to fetch. Defaults to 3. Returns: str: A formatted string listing the last N transactions or a message if no transactions are found. """ try: with sqlite3.connect(DB_PATH) as conn: cursor = conn.cursor() cursor.execute( """ SELECT phone_number, amount, currency_code, transaction_time FROM transactions ORDER BY transaction_time DESC LIMIT ? """, (limit,), ) rows = cursor.fetchall() if not rows: return "No top-up transactions found." result = f"Last {limit} top-up transactions:\n" for row in rows: try: transaction_time = datetime.strptime( row[3], "%Y-%m-%d %H:%M:%S.%f" ).strftime("%Y-%m-%d %H:%M:%S") except ValueError: transaction_time = row[3] result += f"- {transaction_time}: {row[2]} {row[1]:.2f} to {row[0]}\n" return result except Exception as e: return f"Error fetching top-ups: {str(e)}"

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