Skip to main content
Glama

bizcal_api__fx

European Central Bank reference FX rates for a base currency, with optional amount conversion. Price: $0.01 per call in USDC on Base (eip155:8453), paid with x402 in params._meta["x402/payment"]. HTTP: GET https://api.firstmention.uk/s/bizcal-api/fx

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": {
      "base": "<base>",
      "symbols": "<symbols>"
    },
    "name": "bizcal_api__fx"
  }
}

Input Schema

NameRequiredDescriptionDefault
baseYesBase currency, e.g. EUR
amountNoAmount to convert
symbolsYesComma-separated targets, e.g. USD,GBP

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed9 schema fields changed
    • removedInput schema / description
      Removed value: -"Give base and symbols; optional amount/date/start+end."
    • changedInput schema / properties / amount / description
      Previous value: -"optional amount to convert"New value: +"Amount to convert"
    • changedInput schema / properties / amount / type
      Previous value: -"number"New value: +"string"
    • changedInput schema / properties / base / description
      Previous value: -"3-letter base currency, default EUR"New value: +"Base currency, e.g. EUR"
    • removedInput schema / properties / date
      Removed value: -{
      -  "description": "YYYY-MM-DD, optional",
      -  "type": "string"
      -}
    • removedInput schema / properties / end
      Removed value: -{
      -  "description": "YYYY-MM-DD",
      -  "type": "string"
      -}
    • removedInput schema / properties / start
      Removed value: -{
      -  "description": "YYYY-MM-DD, with end, for a series",
      -  "type": "string"
      -}
    • changedInput schema / properties / symbols / description
      Previous value: -"CSV of target currencies, e.g. USD,GBP"New value: +"Comma-separated targets, e.g. USD,GBP"
    • addedInput schema / required
      Added value: +[
      +  "base",
      +  "symbols"
      +]
  2. Added

TDQS

A3.6/5.0
Behavior4/5

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

No annotations are supplied, so the description carries the full burden and does disclose the important operational facts: data source (ECB reference rates), cost ($0.01 USDC on Base, eip155:8453), the exact payment mechanism in params._meta, and the underlying HTTP endpoint. It does not cover rate limits, rate freshness/update cadence, or failure modes, which keeps it below a 5.

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?

Three compact sentences, front-loaded with the purpose before the payment and endpoint details. No filler, though the pricing/payment boilerplate is dense and could be visually separated.

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 and no annotations, so the description should say something about the returned data (rate fields, whether converted amount is echoed). For a 3-parameter read tool the purpose and payment details are complete, but the response shape an agent must parse is left entirely unspecified.

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 schema already documents base, symbols, and amount examples. The description adds only the framing that amount is an optional conversion step, which is a marginal clarification beyond 'Amount to convert'. Baseline 3 is appropriate.

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-and-resource: ECB reference FX rates for a base currency, plus optional amount conversion. That is clearly distinct from chain/price siblings, but the description never names an alternative (e.g. websearch__rates or agentkit__convert) so the differentiation is implicit rather than explicit.

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

Usage Guidelines3/5

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

Usage is implied by the purpose statement plus the payment prerequisite ($0.01 per call via x402), which tells the agent it must supply params._meta['x402/payment']. There is no when-to-use/when-not-to-use guidance and no routing toward or away from sibling rate/convert tools.

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