Skip to main content
Glama

Send South African airtime

create_airtime_order
Destructive

Use this when an authenticated SIMcloud user asks to send or recharge prepaid airtime to a South African mobile number on MTN, Vodacom, Cell C or Telkom. Confirm the MSISDN, network, rand amount and reference before calling. This spends wallet funds and queues an irreversible external transaction. Never automatically retry an ambiguous result. Duplicate same-MSISDN-and-amount requests inside 5 minutes return HTTP 409.

Input Schema

NameRequiredDescriptionDefault
amountYesAirtime amount in South African rand, from R2 to R999.
msisdnYesSouth African mobile number to recharge, for example 0821234567 or +27821234567.
networkYesSupported South African airtime network name or SIMcloud internal code.
referenceYesUser or system reference for this airtime order.

Output Schema

NameRequiredDescriptionDefault
okYesWhether the proxied SIMcloud API request returned a 2xx response.
dataYesDecoded SIMcloud API response body.
statusYesHTTP status returned by the SIMcloud API, or 0 when no HTTP response was received.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations (destructive, non-idempotent, open-world), it discloses that the call spends wallet funds, queues an irreversible external transaction, must not be auto-retried on an ambiguous result, and that duplicate same-MSISDN-and-amount requests within 5 minutes yield HTTP 409. The confirmation precondition adds further operational context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four sentences, front-loaded with the trigger condition, then the confirm-before-calling instruction, then the risk disclosure, then the retry/duplicate rule. Every sentence carries distinct and actionable information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is a destructive, non-idempotent payment operation with an output schema, and the description covers the safety profile (wallet spend, irreversibility, no-retry, 409 dedupe) that the agent needs to call it correctly. Return values are handled by the output schema, so nothing material is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and each of the four parameters is documented in the schema, so the schema does the heavy lifting. The description restates the four fields to confirm (MSISDN, network, rand amount, reference) but adds no format or syntax detail beyond that, which is the baseline 3 case.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description pairs a specific verb ('send or recharge') with a specific resource ('prepaid airtime to a South African mobile number') and enumerates the supported networks, which cleanly separates it from sibling create_data_order and create_vas_order. An agent can select this without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It states an explicit triggering condition ('when an authenticated SIMcloud user asks to send or recharge prepaid airtime') and constrains it to South African numbers on four networks. It doesn't explicitly name the sibling alternatives (create_data_order, create_vas_order) it is not, so it falls just short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources