Skip to main content
Glama

Panes

topup_quote

Reusing a key returns the original quote (HTTP 200); a changed amount/method returns 409. Quote expires in 30 minutes. No charge until authorized. Check /v1/payment-methods before choosing a method.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "request_key": "<request_key>",
      "body": "<body>"
    },
    "name": "topup_quote"
  }
}

Input Schema

NameRequiredDescriptionDefault
bodyYes
request_keyYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.7/5.0
Behavior4/5

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

With annotations only covering safety hints, the description carries real behavioral weight: request_key reuse returns HTTP 200 with the original quote, a changed amount/method returns 409, quotes expire after 30 minutes, and nothing is charged until authorization. That is exactly the kind of retry/conflict/expiry context annotations cannot express. The one tension is that this reuse behavior reads as idempotent while idempotentHint is false; the description is arguably more accurate, so this is not a contradiction, but it would help to state that a fresh key creates a new quote.

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?

Four tight clauses with no filler; every sentence carries distinct information (reuse semantics, conflict code, expiry, charge timing, prerequisite). The one structural weakness is front-loading idempotency details ahead of a plain statement of what the tool produces, which would be the more useful first sentence. Still efficiently packed.

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?

There is no output schema, so the description is the only place an agent can learn what a quote actually contains — quote identifier, resolved amount, expiry timestamp — and none of that is stated; only the 30-minute lifetime is given. For a nested-body, zero-coverage-schema tool the retry and expiry behavior is well covered, but the return shape and the handoff to topup_pay remain unstated. Adequate rather than complete.

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 description coverage is 0%, so the description must compensate, and it largely does: request_key is explained as an idempotency key whose reuse returns the original quote and whose mutation triggers 409, and method selection is tied to checking /v1/payment-methods first. amount_cents is only referenced indirectly through 'a changed amount', leaving units and bounds entirely to the schema. All parameters get some semantic framing, but the amount field is the weakest.

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

Purpose3/5

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

The description never states plainly that the tool creates a top-up quote; the purpose is only inferable from 'returns the original quote', 'quote expires in 30 minutes', and 'no charge until authorized'. The name 'topup_quote' plus these fragments point at quote creation, but there is no explicit verb+resource sentence. It also does not distinguish itself by name from topup_pay or topup_status, so an agent must guess the ordering.

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 gives one concrete prerequisite: 'Check /v1/payment-methods before choosing a method', which tells the agent what to do before calling and steers method selection. It also implicitly frames this as a pre-authorization step ('No charge until authorized'). It stops short of naming the follow-up sibling (topup_pay) or stating exclusions, so it is clear context rather than a full when/when-not/alternatives map.

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.