# BNR exchange rates (npm · @foreverworks/mcp-bnr)

Look up the National Bank of Romania's rate for any day, and convert amounts to and from RON.

- Trust score: 84/100 (high trust)
- Change this week: +3
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-11-05

## Components

- npm · `@foreverworks/mcp-bnr`: 84/100 (this document), [markdown](https://verifymcp.io/servers/com-foreverworks-bnr/foreverworks-mcp-bnr.md), [page](https://verifymcp.io/servers/com-foreverworks-bnr/foreverworks-mcp-bnr)

## Channel facts

- Registry: `npm`
- Package: `@foreverworks/mcp-bnr`
- Version: `0.1.1`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-11-05.

- **Supply Chain Security**: 99/100
  - No malware found by supply-chain analysis.
  - No known CVEs affecting this package version or its production dependencies.
  - No install/post-install scripts declared.
  - 7 of 23 dependencies flagged as unhealthy.
- **Provenance & Transparency**: 100/100
  - Source repository is publicly reachable at the declared URL.
  - Cryptographically verified build provenance (signed, bound to foreverworks/mcps).
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 4 days ago).
  - Publishes a security disclosure policy (SECURITY.md).
- **Schema Quality & AI Usability**: 65/100
  - AI-judged instruction clarity (good).
  - Context-footprint check failed: tool/resource definitions use about 1020 tokens (~204/item across 5 items; 5 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 33/100
  - Stability observed for 10 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
  - Structured output schemas are declared (100% of tools); any adoption earns full credit.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 5 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 6 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a current MCP spec version (2026-07-28).

## Install

### How do I install the BNR exchange rates MCP server?

BNR exchange rates runs locally as an npm package, launched with npx -y @foreverworks/mcp-bnr. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add com-foreverworks-bnr -- npx -y @foreverworks/mcp-bnr
```

### Cursor

```json
{
  "mcpServers": {
    "com-foreverworks-bnr": {
      "command": "npx",
      "args": [
        "-y",
        "@foreverworks/mcp-bnr"
      ]
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "com-foreverworks-bnr": {
      "command": "npx",
      "args": [
        "-y",
        "@foreverworks/mcp-bnr"
      ]
    }
  }
}
```

### Codex

```bash
codex mcp add com-foreverworks-bnr -- npx -y @foreverworks/mcp-bnr
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-foreverworks-bnr": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@foreverworks/mcp-bnr"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add com-foreverworks-bnr --command npx --arg -y --arg @foreverworks/mcp-bnr
```

### Hermes

```yaml
mcp_servers:
  com-foreverworks-bnr:
    command: "npx"
    args: ["-y", "@foreverworks/mcp-bnr"]
```

### Netclaw

```json
{
  "McpServers": {
    "com-foreverworks-bnr": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "@foreverworks/mcp-bnr"
      ]
    }
  }
}
```

### Vellum

```bash
assistant mcp add com-foreverworks-bnr -t stdio -c npx -a -y @foreverworks/mcp-bnr
```

### Other

```json
{
  "mcpServers": {
    "com-foreverworks-bnr": {
      "command": "npx",
      "args": [
        "-y",
        "@foreverworks/mcp-bnr"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-11-04 (score 84, +1)

No change was recorded against any check on this day. Stability & Change Management went from 27 to 30. That category is still filling its 30-day observation window: 8 days of observed history at the previous scan, 9 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-11-02 (score 83, +1)

No change was recorded against any check on this day. Stability & Change Management went from 20 to 23. That category is still filling its 30-day observation window: 6 days of observed history at the previous scan, 7 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-11-01 (score 82, +15)

- [security improvement] Malware scan: unverified → pass

### 2026-10-31 (score 67, −14)

- [security regression] Malware scan: pass → unverified
- [functional regression] Security disclosure: pass → unverified
- [functional] Package version: 0.1.0 → 0.1.1

### 2026-10-29 (score 81, +1)

No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-27 (score 80, +1)

No change was recorded against any check on this day. Stability & Change Management went from 0 to 3. That category is still filling its 30-day observation window: 0 days of observed history at the previous scan, 1 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-26 (score 79)

First indexed and scored.

## MCP tools (5)

### `annual_average` (~149 tokens)

BNR annual average

BNR's annual average rate for a year, as ANAF converts foreign income in the D212 ("cursul de schimb mediu anual comunicat de BNR"): the mean of the twelve monthly averages, each the mean of the month's daily rates, to four places, with the monthly values and their day counts. Not the mean of the daily rates, which differs. A year not over yet answers the months so far with complete: false.

Input parameters:

- `currency` (string, required): ISO 4217 code: EUR, USD, GBP, CHF, ... (XAU gold, XDR SDR); case ignored.
- `year` (integer, required): The calendar year, e.g. 2023.

Output parameters:

- `average` (string): BNR's exact text, RON per `multiplier` units
- `complete` (boolean)
- `currency` (string)
- `method` (string)
- `months` (array)
- `multiplier` (integer)
- `note` (string)
- `ok` (boolean)
- `source` (string)
- `warning` (string)
- `year` (integer)

### `convert` (~329 tokens)

Convert to or from RON

An amount converted to or from RON at BNR's reference rate, computed exactly and rounded once: to RON is amount x rate / multiplier, from RON amount x multiplier / rate. rate_rule picks the fixing: in_force (the day's, or the last banking day's before it, as rate answers) or last_before (the last one strictly before the day, the rule for an invoice in a foreign currency). Answers the result with the rate, its multiplier and the date BNR published it, so the conversion can be stated. One side must be RON; for two other currencies, convert twice.

Input parameters:

- `amount` (string, required): The amount, as a decimal string: "1250.50", "-75". Never a number.
- `date` (string): The day of the conversion, YYYY-MM-DD in Bucharest (an invoice's date, a payment's); default today.
- `from` (string, required): The amount's currency: RON, or the currency to convert to RON. ISO 4217; case ignored.
- `places` (integer): Digits after the point in the result.
- `rate_rule` (string): in_force: the rate in force on the day; last_before: the last rate published before the day.
- `rounding` (string): How the result is rounded, once: half-up (halves away from zero, as invoices round) or half-even (banker's).
- `to` (string, required): The currency wanted: RON, or the currency to convert RON to. ISO 4217; case ignored.

Output parameters:

- `amount` (string): The amount converted, as given
- `date` (string)
- `from` (string)
- `meaning` (string)
- `multiplier` (integer)
- `note` (string)
- `ok` (boolean)
- `places` (integer)
- `published_on` (string): The date of the fixing the conversion used
- `rate` (string): BNR's exact text, RON per `multiplier` units
- `rate_rule` (string)
- `result` (string): The converted amount, computed exactly and rounded once
- `rounding` (string)
- `source` (string)
- `to` (string)

### `health` (~30 tokens)

Health

Whether BNR's rates can be read now: the date of its latest fixing and how many currencies it carries.

Output parameters:

- `currencies` (integer)
- `latest_fixing` (string)
- `ok` (boolean)
- `source` (string)
- `today` (string)
- `warning` (string)

### `rate` (~167 tokens)

BNR rate on a day

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 parameters:

- `currency` (string, required): ISO 4217 code: EUR, USD, GBP, CHF, ... (XAU gold, XDR SDR); case ignored.
- `date` (string): The day, YYYY-MM-DD in Bucharest; default today.

Output parameters:

- `currency` (string)
- `date` (string)
- `meaning` (string)
- `multiplier` (integer)
- `note` (string)
- `ok` (boolean)
- `published_on` (string): The date of the fixing this rate is
- `rate` (string): BNR's exact text, RON per `multiplier` units
- `source` (string)

### `rates` (~221 tokens)

BNR rates: several currencies, or a window

BNR's reference rates as series, the exact text BNR published. With date (default today): each currency's rate in force that day, from the day's fixing or the last banking day's before it. With from (and to, default today): every fixing BNR published in the window, oldest first, at most 366 days and 2000 rates a call. Without currencies, every currency BNR published. Each series carries its multiplier (RON per 1, or per 100 for HUF, JPY, KRW and a few others).

Input parameters:

- `currencies` (array): ISO 4217 codes, e.g. ["EUR", "USD"]; default every currency BNR published.
- `date` (string): One day, YYYY-MM-DD in Bucharest: the rates in force on it. Not with from.
- `from` (string): A window's first day, YYYY-MM-DD: every fixing from it to `to`.
- `to` (string): A window's last day, included; default today. Only with from.

Output parameters:

- `absent` (array): Currencies asked for that BNR published no fixing of in the window
- `count` (integer): How many rates the series hold
- `date` (string): The day asked for: each series holds the rate in force on it
- `from` (string)
- `note` (string)
- `ok` (boolean)
- `series` (array): One per currency, or per currency and multiplier if BNR changed it within the window
- `source` (string)
- `to` (string)

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/com-foreverworks-bnr/foreverworks-mcp-bnr#diagnostics

## Score history

- 2026-11-05: 84
- 2026-11-04: 84
- 2026-11-03: 83
- 2026-11-02: 83
- 2026-11-01: 82
- 2026-10-31: 67
- 2026-10-30: 81
- 2026-10-29: 81
- 2026-10-28: 80
- 2026-10-27: 80
- 2026-10-26: 79

## Common questions

### What is the BNR exchange rates MCP server?

BNR exchange rates is an MCP server listed in the public MCP registry as com.foreverworks/bnr. Look up the National Bank of Romania's rate for any day, and convert amounts to and from RON. This page covers its npm package (@foreverworks/mcp-bnr).

### Is the BNR exchange rates MCP server safe to use?

BNR exchange rates scores 84 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 5 November 2026. It declares no install or post-install scripts. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the BNR exchange rates MCP server expose?

BNR exchange rates exposes 5 tools: annual_average, convert, health, rate, rates. Their descriptions and schemas cost roughly 896 tokens of context every time the server is loaded.

### Is the BNR exchange rates MCP server still maintained?

BNR exchange rates is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

### What licence is the BNR exchange rates MCP server under?

BNR exchange rates declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.

## Links

- npm package: https://www.npmjs.com/package/@foreverworks/mcp-bnr
- Socket report: https://socket.dev/npm/package/@foreverworks/mcp-bnr
- Repository: https://github.com/foreverworks/mcps
- Website: https://foreverworks.github.io/mcps/servers/bnr/
- Changelog RSS feed: https://verifymcp.io/servers/com-foreverworks-bnr/foreverworks-mcp-bnr.xml
- Changelog JSON feed: https://verifymcp.io/servers/com-foreverworks-bnr/foreverworks-mcp-bnr.json
- HTML version of this page: https://verifymcp.io/servers/com-foreverworks-bnr/foreverworks-mcp-bnr
