Skip to main content
Glama

add_funds

Generate a secure checkout link the user opens to add cash to their own balance (the money that funds new cards) via Apple Pay or Google Pay, in USD. Calling this tool moves NO money and initiates NO transfer: it only prepares a single-use hosted payment page — the exact equivalent of the user clicking 'Add funds' in the dashboard. The user personally reviews, authorizes, and completes (or abandons) the payment in their own browser with their own payment method; you never see or handle payment credentials. If a one-time phone verification is needed first, this tool automatically sends the user a code and tells you where it went: ask the user for the code, call verify_phone with it, then call add_funds again.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
amount_centsYesAmount to add in cents (e.g. 5000 = $50.00). Typical range: $20.00 to $10,000.00 (2000 to 1000000 cents); the exact range depends on the active funding provider and is returned by the API when the amount is invalid.
payment_methodNoPayment method for the checkout: apple_pay or google_pay. Ask the user which one their device has; apple_pay only when unknown.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
messageYesHuman-readable result or next step.
amountUsdNoAmount of the created checkout in USD.
checkoutUrlNoSingle-use payment link to hand the user verbatim (present when a checkout was created).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / payment_method / description
      Previous value: -"Payment method for the checkout. Defaults to apple_pay."New value: +"Payment method for the checkout: apple_pay or google_pay. Ask the user which one their device has; apple_pay only when unknown."
  2. First observed

TDQS

A4.8/5.0
Behavior5/5

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

The description goes well beyond the annotations. It explicitly states that calling this tool moves no money, initiates no transfer, and only prepares a single-use hosted payment page. It also discloses that the user completes the payment in their own browser, that the agent never sees payment credentials, and that the tool may automatically send a verification code. This is rich behavioral context that the annotations (readOnlyHint=false, idempotentHint=false) do not provide.

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

Conciseness4/5

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

The description is a single, dense paragraph that front-loads the core purpose and then explains the verification flow. It is longer than strictly necessary, but every sentence adds meaningful information. The structure is logical: purpose, non-behavior, user experience, verification fallback. It earns a 4 rather than a 5 because it could be slightly more scannable with a break between the main behavior and the verification flow.

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 description is complete for an agent to invoke this tool correctly. It covers what the tool does, what it does not do, how the user interacts with the result, and the conditional verification flow. The output schema exists, so return values are already documented. The only minor gap is the exact range of the amount, but the description notes the API returns the range when invalid, which is sufficient.

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?

The schema already covers both parameters with descriptions, including the enum values and the amount range. The description adds context by explaining the purpose of the amount (funds new cards) and the payment method selection guidance ('ask the user which one their device has; apple_pay only when unknown'). This adds value beyond the schema, though the schema already does most of the work.

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 clearly states the tool's function: generating a secure checkout link for adding funds via Apple Pay or Google Pay in USD. It distinguishes itself from related tools by explicitly noting it moves no money and initiates no transfer, and it names the sibling tool verify_phone for the verification flow. The verb 'generate' plus the resource 'checkout link' is specific and unambiguous.

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

Usage Guidelines5/5

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

The description provides explicit when-to-use guidance: it is the equivalent of the user clicking 'Add funds' in the dashboard, and it should be used when the user wants to add cash to their balance. It also gives a clear conditional workflow: if phone verification is needed, call verify_phone with the code, then call add_funds again. This is strong usage guidance that routes the agent correctly.

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