io.github.mohammad-abbasi-sh/ecb-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
Unofficial read-only MCP server for European Central Bank data via the official ECB SDMX API (no key, no login): daily euro reference exchange rates, key ECB interest rates (main refinancing, deposit facility, marginal lending), HICP inflation for the euro area and Germany, euro-area money supply (M1/M2/M3) and AAA-rated euro-area government bond yields by maturity. The ECB API 504s intermittently — requests are retried once. Built by Mohammad Abbasi (mohammad-abbasi-sh) — https://almanibama.ir · https://mabbasi.ir — Germany MCP factory.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| ecb_exchange_ratesB | Daily euro reference exchange rates (ECB). currencies: ISO codes like ["USD", "GBP", "JPY"] — default: all major currencies (25). limit: 1..30 days of history per currency (default 5). Returns the latest rate per currency plus history. |
| ecb_interest_ratesA | Current key ECB interest rates: main refinancing operations, deposit facility and marginal lending facility — with the date each rate took effect (daily series, latest observation). |
| ecb_inflationB | HICP annual inflation rate (%). area: "U2" (euro area, default) or "DE" (Germany). limit: 1..24 months (default 6). |
| ecb_money_supplyB | Euro-area money supply outstanding amounts (EUR millions). aggregate: "M1", "M2" or "M3" (default). limit: 1..24 months (default 6). |
| ecb_bond_yieldsA | AAA-rated euro-area government bond spot yields (%). maturity: 1Y, 2Y, 5Y, 10Y (default), 20Y or 30Y. limit: 1..30 days (default 5). |
| ecb_healthA | Check whether the ECB SDMX API is reachable right now. Returns status ok (HTTP 200), blocked (HTTP 403/429 — bot wall or rate limit) or error, plus the HTTP status and the probed URL. One polite request; it does not fetch any listings. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 6 tools
Each tool maps to a clearly distinct ECB dataset (exchange rates, interest rates, inflation, money supply, bond yields) with no overlapping scope, and ecb_health is unambiguously a connectivity probe. Parameter names (currencies, area, aggregate, maturity, limit) further separate the tools.
All six tools follow the same ecb_<domain_noun> snake_case pattern, and parameter names use consistent lowercase snake_case as well. The only slight outlier is ecb_health, but it still fits the prefix/pattern convention.
Six tools is well-scoped for a focused ECB statistical data server, with one tool per major dataset plus a diagnostic. Nothing feels padded or redundant.
The set covers the headline ECB datasets with sensible defaults and history limits, and includes a health check for failure diagnosis. Minor gaps exist: no discovery/metadata tool to enumerate valid currencies, areas, or aggregates, and no fallback beyond the health probe.