European Central Bank statistical data MCP server — provides access to ECB SDMX 2.1 REST endpoints for exchange rates, inflation data, and generic SDMX queries
Four tools with complete schemas and reasonable descriptions. Naming follows verb_noun convention (exchange_rate, hicp_inflation, get_data, list_dataflows). Descriptions are 80-200 chars, meeting baseline. However, parameter descriptions lack detail on constraints, valid ranges, and format expectations. No output schema documentation. Error handling is minimal, no recovery guidance or actionable error messages. Missing idempotency hints and permission declarations. Tools are well-scoped (single responsibility) but lack composition guidance.
Daily EUR exchange rate against a currency. Returns time series of observations. Currency is the ISO 4217 code (e.g. "USD", "GBP", "JPY", "CHF").
Generic SDMX data fetch from any ECB flow. Key is dot-separated dimension values; empty positions are wildcards. Example: flow_ref="EXR", key="D.USD.EUR.SP00.A" (daily USD/EUR spot).
Harmonised Index of Consumer Prices (HICP) annual rate of change for a country / euro area. Monthly frequency. country defaults to U2 (euro area).
List ECB SDMX data flows. Optional substring filter on flow ref or name.
No output schema documentation. LLMs cannot predict response structure (fields, types, nesting). Prevents downstream tool chaining and forces parsing guesswork.
Parameter descriptions lack format/constraint details. 'start_period' says 'Start date (YYYY-MM-DD)' but doesn't specify if it's required, what happens if omitted, or if partial dates are accepted. 'frequency' lists options but no enum constraint.
No error handling guidance. Code throws generic errors ('ECB: no data for flow=...', 'ECB error: ...') with no recovery hints. LLM cannot determine if error is retryable, user-fixable, or fatal.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 57 | 2026-07-28+ | v2 |
Missing required field declarations. 'hicp_inflation' has no required array, country and date params appear optional but may be needed. 'list_dataflows' filter is optional but behavior when omitted is undocumented.
No pagination or result limits documented. 'list_dataflows' and 'get_data' could return hundreds of items. No mention of max results, pagination tokens, or offset/limit parameters.