Skip to main content
Glama

onramp_quote

Read-onlyIdempotent

What every payment rail really costs, side by side — Prices the same fiat purchase across EVERY payment method a country allows, and ranks them by what the buyer actually receives. On $100 in the US the spread is real: card takes 2.44, bank transfer 0.50, a funded fiat wallet nothing. Returns each rail's fee, net amount, min/max limits, and the cheapest one. Live Coinbase pricing, not a rate card. Pass address= for a payable checkout link. Not financial advice. Required inputs: country, amount. Priced $0.03 per call over x402 on Base; send a prepaid x-credit-token header for unlimited calls, or get 1 free call/day per tool. No wallet or API key required.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
assetNoAsset to buy (optional, default USDC)
amountYesFiat amount
addressNoDestination wallet (optional — needed for a checkout link)
countryYesISO country code
networkNoNetwork (optional, default base)
currencyNoFiat currency (optional, default USD)

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
dataNoThe result payload. Shape is service-specific; every field is documented in the tool description.
serviceNoThe service id that answered.
checkedAtNoISO-8601 timestamp of when the underlying reads were taken.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / properties / data / description
      Previous value: -"The result payload. Shape is service-specific; every field is documented in the service description above."New value: +"The result payload. Shape is service-specific; every field is documented in the tool description."
  2. Changed1 schema field changed
    • removedOutput schema / required
      Removed value: -[
      -  "data"
      -]
  3. Added

TDQS

A4.4/5.0
Behavior5/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, and the description adds substantial context beyond them: live Coinbase pricing rather than a static rate card, concrete return contents (fee, net amount, min/max limits, cheapest one), a real-world example ($100 US spread), and a billing/access model ($0.03 per call over x402, x-credit-token header for unlimited calls, 1 free call/day). No contradictions with the annotations — quoting is consistent with a read-only, idempotent operation.

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 purpose is front-loaded in the first sentence, and the description is dense with operational value (inputs, optional params, data source, billing, auth). However, it is on the verbose side (~130 words) with marketing flourishes that carry no operational weight ('the spread is real', 'Not financial advice') and a long billing tail that could be tightened.

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?

Given the 100% schema coverage, an existing output schema, and annotations covering the safety profile, the description completes the picture: use case, required and optional inputs, return values, data freshness, cost, billing access, and authentication requirements. Nothing an agent needs to invoke this tool correctly 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%, so the baseline is 3 — the schema already documents all 6 parameters. The description adds only marginal parameter-level meaning: the '$100 in the US' example clarifies amount semantics, and 'Pass address= for a payable checkout link' reinforces what the schema already says. It does not explain asset, network, or currency beyond their schema descriptions.

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 states a specific verb and resource: 'Prices the same fiat purchase across EVERY payment method a country allows, and ranks them by what the buyer actually receives.' This clearly differentiates it from the sibling onramp_coverage (which presumably lists allowed methods) by focusing on comparative pricing and ranking. The 'side by side' framing plus the explicit return of 'the cheapest one' leaves no ambiguity about what the tool produces.

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?

The description gives clear operational context: 'Required inputs: country, amount', explains when to add address ('Pass address= for a payable checkout link'), and states access prerequisites ('No wallet or API key required'). However, it never explicitly names an alternative tool or states when not to use this one — the relationship to onramp_coverage is only implied by the phrase 'everything a country allows.'

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