Skip to main content
Glama

netfluid__withdraw_to_ott

Withdraws ZAR to any the OTT Mobile supported providers, confirm (yes/no) before executing

Step 3. Performs the withdrawal based on the quote_id returned from /withdraw/to_ott_quote. The final ZAR amount may differ from the quoted amount. On successfully submission a payment_id will be returned @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk from which the funds will be withdrawn @param quote_id: The quote_id returned from withdraw/to_ott_quote @param mobile: The recipients South African mobile number, format 27XXXXXXXXX

@return: a json object

Input Schema

NameRequiredDescriptionDefault
tokenYes
mobileNo
api_keyYes
quote_idYes
account_fkYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -{
      -  "type": "object"
      -}New value: +null
  2. Added

TDQS

A3.6/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It usefully discloses that the final ZAR amount may differ from the quoted amount and that a payment_id is returned on success, but omits failure modes, reversibility, rate limits, and auth requirements beyond what the parameter docs imply.

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

Conciseness3/5

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

The opening verb phrase is front-loaded well, but the body is a raw docstring dump with a dangling 'Step 3.' fragment and verbose @param/@return tags. The parameter notes earn their place, but the structure is uneven rather than tight.

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

Completeness3/5

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

For a 5-parameter, 0%-coverage mutation tool with no annotations and no output schema, the description covers parameters and the key behavioral caveat (amount may differ). However, @return is only 'a json object', and the confirm yes/no instruction has no parameter backing, leaving the calling contract slightly ambiguous.

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

Parameters4/5

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

Schema coverage is 0%, so the description must compensate, and it does well: it documents the source of token and quote_id, warns that account_fk is a database int (not an address) and cannot be 0, and gives the mobile format 27XXXXXXXXX. Only the unexplained 'confirm (yes/no)' has no corresponding parameter.

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

Purpose4/5

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

States a specific verb+resource: withdraws ZAR to OTT Mobile supported providers, and positions itself as step 3 of a quote-then-withdraw flow. It is distinguishable from withdraw_to_bank and the quote/query siblings, though it never names those alternatives directly.

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?

Gives clear context: it must be preceded by the quote step, since it performs the withdrawal based on the quote_id returned from /withdraw/to_ott_quote. The 'confirm (yes/no)' instruction implies a consent gate. No explicit when-not guidance or named alternative tools, so it stops 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