Skip to main content
Glama

fx_rate

Currency exchange rate and conversion read on chain from Chainlink FX feeds on Ethereum: EUR, GBP, JPY, CHF, AUD, CAD, CNY, KRW, SGD, TRY, BRL, NZD, PHP, USD, gold (XAU) and silver (XAG); cross rates from two USD feeds. $0.001 per call over x402 (USDC on Arc, Base or Solana, or XNT on X1). Call once without payment for the terms, sign them with your own wallet, call again with payment.

Input Schema

NameRequiredDescriptionDefault
toNo3-letter code, default USD
fromYes3-letter code, e.g. EUR
amountNoamount to convert, default 1
paymentNoa signed x402 payment (the base64 payload you would put in PAYMENT-SIGNATURE). Pass it and the purchase completes inside this tool call.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does well: it discloses the on-chain Chainlink source, the $0.001 per-call price, the accepted payment rails (USDC on Arc/Base/Solana, XNT on X1), and that the purchase completes inside the call. It omits failure/expiry behavior for signed payments and any note on oracle staleness or rate limits.

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?

Front-loaded with what the tool does, then source, then assets, then pricing and the call sequence. The currency enumeration is long but is directly actionable for parameter values, and no sentence is filler.

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

Completeness4/5

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

There is no output schema and no annotations, so the description must cover behavior, and it covers source, cost, assets, and the payment lifecycle well. The one gap is that it never describes the shape of the returned rate/conversion result, which an agent must discover empirically.

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 100%, so baseline would be 3, but the description adds real meaning: the enumerated currency list constrains valid `from`/`to` codes, and 'cross rates from two USD feeds' clarifies that both codes may be non-USD. The `payment` flow explanation also contextualizes when that parameter is required, beyond the schema's field-level note.

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?

States a specific verb and resource (currency exchange rate and conversion), names the data source (Chainlink FX feeds on Ethereum), and enumerates the supported assets including metals and cross rates. This clearly separates it from the sibling crypto_price, which covers a different asset class.

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 explicit procedural guidance for the two-step x402 flow: call without `payment` to get terms, sign with your own wallet, call again with `payment`. It never states when to prefer this over crypto_price or sanctions_check, so it is clear context without exclusions.

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