Skip to main content
Glama
Forever Works MCP servers

Forever Works MCP servers

BNR rate on a day

rate
Read-onlyIdempotent

Get the official BNR reference exchange rate for a currency on a given date, falling back to the last banking day's fixing for weekends, holidays, or before publication.

Instructions

The National Bank of Romania's reference rate in force on a day: RON per multiplier units of the currency (1, or 100 for HUF, JPY, KRW and a few others), as the exact text BNR published, with published_on, the date of the fixing it is. A weekend, a holiday, or today before BNR publishes (about 13:00 Bucharest) takes the last banking day's fixing. Use it for any EUR/RON or other conversion stated on a date.

Input Schema

NameRequiredDescriptionDefault
dateNoThe day, YYYY-MM-DD in Bucharest; default today.
currencyYesISO 4217 code: EUR, USD, GBP, CHF, ... (XAU gold, XDR SDR); case ignored.

Output Schema

NameRequiredDescriptionDefault
okYes
dateYes
noteNo
rateYesBNR's exact text, RON per `multiplier` units
sourceYes
meaningYes
currencyYes
multiplierYes
published_onYesThe date of the fixing this rate is

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, and openWorld, but the description adds genuinely new behavior: weekends, holidays, and today before ~13:00 Bucharest fall back to the last banking day's fixing, and the returned `published_on` reflects the fixing date rather than the requested date. The multiplier convention (1, or 100 for HUF/JPY/KRW) is also disclosed only here. It stops short of describing error behavior for unknown currency codes.

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 and units are front-loaded in the first clause, and each subsequent clause (multiplier exception, published_on, fallback rule, use case) carries distinct information. It is somewhat dense and runs long as a single block, but there is no filler.

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?

For a two-parameter lookup with an output schema, everything an agent needs is present: what is returned, the multiplier caveat, the date default, and the non-banking-day fallback. Return-value explanation is correctly kept brief since the output schema exists.

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 both parameters are already documented in the input schema, which sets the baseline at 3. The description's multiplier and Bucharest-timezone context clarifies how to interpret `currency` and `date` results rather than adding new parameter syntax, so it does not materially exceed the schema's own coverage.

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: the National Bank of Romania's reference rate in force on a given day. The scope is precise enough that an agent can distinguish a point-in-time rate lookup from the sibling `rates` or `annual_average`, though neither is named to draw the contrast explicitly.

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?

"Use it for any EUR/RON or other conversion stated on a date" gives a concrete when-to-use trigger. It does not name the alternatives (`convert`, `rates`, `annual_average`) or state when not to use it, so the routing to siblings is left implicit — and the conversion phrasing brushes against what `convert` likely does.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

This server cannot be deployed

Other Tools