Access live European Central Bank (ECB) interest rates, Eurostat GDP, HICP inflation, and EUR exchange rates directly inside Claude Desktop or Claude Code — in under 60 seconds, with no API key required on the free plan.
This guide covers the full setup on macOS, Windows, and Linux, the six tools you unlock after installation, real-world prompts to use immediately, and troubleshooting for the edge cases most users encounter.
Why EU financial data in Claude?
According to ECB statistical releases, the deposit facility rate stands at 2.50% as of April 2026 — down from a peak of 4.00% in September 2023. Eurostat reports that eurozone HICP inflation reached 2.2% in March 2026, with variation ranging from below 1% in some member states to above 4% in others. These figures change every month, every quarter, or after every ECB Governing Council meeting.
None of this is in Claude’s training data. LLMs have a knowledge cutoff; live financial data requires a live connection. Before MCP, the only options were: first, copy-pasting from dashboards (slow, error-prone); second, calling raw APIs directly (requires code and parsing SDMX-XML); or third, paying for a Bloomberg Terminal at approximately $25,000/year.
eu-finance is a real-time bridge. Data from Eurostat and the ECB is fetched on demand, cached in Redis for 1–24 hours depending on dataset freshness, and returned as clean JSON that Claude can reason over in natural language — with no code required on your end. According to our analysis of typical research sessions, a full multi-country comparison using all six tools uses fewer than 30 API calls.
What is eu-finance MCP?
eu-finance is a Model Context Protocol (MCP) server — according to the official MCP specification, a server is a lightweight process that exposes tools AI agents can call via a standardised JSON-RPC protocol. eu-finance wraps three public data sources — the European Central Bank (ECB) API, the Eurostat REST API, and the Frankfurter exchange rate service — into six clean, cacheable tools.
When eu-finance is connected to Claude Desktop or Claude Code, Claude can query live ECB key interest rates (currently 2.50% deposit facility rate as of April 2026), Eurostat GDP growth by EU member state, Harmonised Index of Consumer Prices (HICP) inflation, EUR/USD and 30+ other exchange rate pairs, and EU unemployment figures. According to data from the ECB Statistical Data Warehouse, these indicators collectively cover over 300 distinct time series across 27 EU member states — all accessible via natural language, without copy-pasting from dashboards or writing a line of code.
The package runs via npx, which means no global install and no manual update: you always get the latest published version automatically.
Plan comparison:
| Feature | Free | Pro | Scale |
|---|---|---|---|
| API calls/day | 100 | 5,000 | 50,000 |
| API key required | No | Yes | Yes |
| All 6 tools | ✅ | ✅ | ✅ |
| Cache TTL | Standard | Priority refresh | Priority refresh |
| Historical data | 90 days | Full history | Full history |
| Support | Community | Priority | |
| Price | €0 | €19/mo | €49/mo |
How it compares to alternatives
| Option | EU coverage | Natural language | Price |
|---|---|---|---|
| eu-finance MCP | ECB + Eurostat + Frankfurter | ✅ via Claude | Free – €49/mo |
| ecb-mcp | ECB only | ✅ via any MCP client | Free (no Eurostat) |
| Bloomberg Terminal | Comprehensive | ❌ proprietary interface | ~$25,000/year |
| FRED API (St. Louis Fed) | US-focused, limited EU | ❌ raw API | Free (US data only) |
| Manual ECB/Eurostat dashboards | Full | ❌ copy-paste | Free (time-intensive) |
eu-finance is the only free option that combines ECB rates, Eurostat macro indicators, and natural language querying in a single MCP server.
Prerequisites
- Node.js 18 or higher — verify with
node --version - Claude Desktop (any 1.x release) or Claude Code CLI
- No npm project setup required —
npxhandles the download automatically
Claude Desktop setup
1. Open the configuration file
The Claude Desktop configuration file is a JSON document that Claude reads at startup to discover which MCP servers to load. In practice, this means you can register eu-finance once and it will be available in every conversation without any further setup. The file location depends on your operating system:
| OS | Config file path |
|---|---|
| macOS | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Windows | %APPDATA%\Claude\claude_desktop_config.json |
| Linux | ~/.config/Claude/claude_desktop_config.json |
If the file does not exist yet, create it — Claude Desktop will pick it up on next launch.
macOS shortcut: press Cmd + , inside Claude Desktop, go to Developer, then click Edit Config.
2. Add the eu-finance server
The mcpServers block is a JSON object where each key is the name Claude uses to identify the server. Adding eu-finance means inserting a single "eu-finance" key with the npx command that downloads and starts the package. In practice, Claude launches this process automatically each time you open a new conversation — no manual startup required.
claude_desktop_config.json
{
"mcpServers": {
"eu-finance": {
"command": "npx",
"args": ["-y", "@nexusforgetools/eu-finance"]
}
}
}
If you already have other MCP servers in the mcpServers object, add the "eu-finance" key alongside them — do not replace the existing entries.
3. Restart Claude Desktop
Fully quit Claude Desktop (⌘Q on macOS, Alt+F4 on Windows) and reopen it. The MCP server starts automatically at launch. The first start downloads the package (~500 KB) via npx; subsequent starts use the cached version and are instant.
4. Verify the connection
Ask Claude:
“What is the current ECB deposit facility rate?”
Claude should respond with the current rate and the date it was last updated by the ECB. As of April 2026, the ECB deposit facility rate is 2.50%, down from a peak of 4.00% in September 2023 — if Claude returns a figure in that range with a recent date, your setup is working correctly.
Claude Code setup
Claude Code is a CLI-first AI coding assistant that supports MCP servers natively via the claude mcp add command. Unlike Claude Desktop — which reads a JSON config file — Claude Code is designed for terminal workflows and stores MCP configuration per project (in .claude/) or globally. In practice, this means you can add eu-finance once globally and it is available in every project without repeating the setup.
One command registers eu-finance as a persistent MCP server in Claude Code:
claude mcp add eu-finance -- npx -y @nexusforgetools/eu-finance
Verify it is listed:
claude mcp list
Test immediately inside a session:
claude
> What is the EUR/USD exchange rate right now?
Claude Code stores the MCP configuration per project (in .claude/) or globally. The claude mcp add command defaults to project scope; add --scope global to make it available in every project.
Pro and Scale plan setup (API key)
A Pro or Scale API key is a unique token that identifies your subscription and lifts the 100 calls/day cap. In practice, the key is passed as an environment variable so it never touches your codebase — only the local config file on your machine. We found that most users on the Pro plan (5,000 calls/day) comfortably support daily automated workflows, while Scale (50,000 calls/day) is designed for teams or production pipelines running batch analysis.
If you have a Pro or Scale subscription, set your API key in the environment to remove the 100 calls/day limit and unlock priority cache refresh.
Claude Desktop with API key
claude_desktop_config.json
{
"mcpServers": {
"eu-finance": {
"command": "npx",
"args": ["-y", "@nexusforgetools/eu-finance"],
"env": {
"NEXUSFORGE_API_KEY": "nf_your_key_here"
}
}
}
}
Claude Code with API key
claude mcp add eu-finance -- env NEXUSFORGE_API_KEY=nf_your_key_here npx -y @nexusforgetools/eu-finance
The six tools available after setup
Once eu-finance is connected, Claude has access to six structured data tools sourced from official ECB and Eurostat APIs.
get_ecb_rates — ECB key interest rates
get_ecb_rates is a tool that returns the three ECB key policy rates: the deposit facility rate (currently 2.50% as of April 2026), the main refinancing operations (MRO) rate (currently 2.65%), and the marginal lending facility rate (currently 2.90%). According to ECB data, these rates peaked at 4.00%, 4.50%, and 4.75% respectively in September 2023 — representing a cumulative easing of 150 basis points through Q1 2026. Data is sourced directly from the ECB Statistical Data Warehouse API and cached for 1 hour.
What you can ask:
- “What are the current ECB interest rates?”
- “What is the spread between the ECB deposit rate and the main refi rate?”
- “When did the ECB last change rates?“
get_euro_exchange — EUR exchange rates (30+ pairs)
Returns EUR exchange rates against 30+ currencies including USD, GBP, JPY, CHF, SEK, PLN, and all major EM currencies. Historical time series available. Sourced from the ECB and the Frankfurter exchange rate API.
What you can ask:
- “What is the EUR/USD rate today?”
- “Show me EUR/GBP for the last 30 days”
- “Which currencies appreciated most against the euro this year?“
get_eu_inflation — HICP inflation by EU country
get_eu_inflation returns the Harmonised Index of Consumer Prices (HICP) — the official EU inflation measure — broken down by EU member state and optionally by component (energy, food, services). According to Eurostat data, eurozone headline HICP inflation reached 2.2% in March 2026, down from a peak of 10.6% in October 2022. Member state divergence remains significant: first, Baltic states continue to show above-average inflation; second, Germany and France track closer to the eurozone median. Data is sourced from the Eurostat REST API and cached for 6 hours.
What you can ask:
- “Which EU country had the highest inflation in Q1 2026?”
- “Compare German and French inflation since 2022”
- “What is core inflation in Spain right now?“
get_eu_gdp — GDP by EU country (quarterly)
Returns quarterly GDP growth rates and absolute values by EU member state, in real and nominal terms. Sourced from Eurostat national accounts data.
What you can ask:
- “Compare GDP growth in Germany, France, and Italy over 2025”
- “Which EU economy grew fastest in 2025?”
- “What is Poland’s GDP in euros?“
get_eu_unemployment — Unemployment by EU country
Returns monthly and quarterly unemployment rates by EU member state, with breakdowns by age group (youth unemployment) and gender where available. Sourced from Eurostat labour market statistics.
What you can ask:
- “Which EU country has the lowest unemployment rate?”
- “What is youth unemployment in Spain?”
- “Compare unemployment trends in Germany and Italy since 2020”
compare_eu_economies — multi-indicator snapshot
Calls multiple Eurostat and ECB endpoints in a single request and returns a structured comparison of GDP growth, inflation, unemployment, and EUR exchange rate impact for a set of EU member states. Ideal for macro analysis and briefing documents.
What you can ask:
- “Give me a macro overview of the French economy”
- “Compare Germany, France, Italy, and Spain across all key indicators”
- “Which EU economy is the most resilient right now?”
Real-world prompts to use immediately
These prompts are representative of queries that work well with eu-finance. Each maps to specific use cases in finance, research, and automated workflows.
For investment research and portfolio monitoring:
“What is the current ECB deposit facility rate, and how does it compare to the rate 12 months ago? What does this imply for EUR fixed income?”
This calls get_ecb_rates with historical comparison. Useful for bond traders and macro investors monitoring the ECB easing cycle.
For FX exposure analysis:
“Show me EUR/USD, EUR/GBP, and EUR/JPY rates for the last 90 days, and flag any moves larger than 2%.”
This calls get_euro_exchange three times and asks Claude to apply a filter — something a dashboard can’t do without custom code.
For inflation monitoring across the eurozone:
“Which EU country had the highest HICP inflation in Q1 2026, and which had the lowest? What are the main drivers?”
This calls get_eu_inflation for all EU member states and asks for causal analysis — combining data retrieval with reasoning in a single prompt.
For country risk and macro briefings:
“Give me a one-page macro briefing on Italy: GDP growth, inflation, unemployment, and EUR exposure.”
This triggers compare_eu_economies for Italy and returns a structured briefing. Useful for equity analysts, credit risk teams, and economists preparing client materials.
For automated reporting pipelines:
“Every Monday morning, pull the latest ECB rate, EUR/USD, and eurozone inflation. Format as a JSON object I can paste into our internal dashboard.”
eu-finance data is structured JSON — Claude can reformat it, filter it, and embed it in templates without any data transformation layer.
How eu-finance works under the hood
Understanding the architecture helps when debugging or when deciding between the free and paid plans.
Transport: stdio vs HTTP
According to the MCP specification, a transport is the communication layer between a client (Claude) and a server (eu-finance). eu-finance supports two transports. First, stdio — the standard transport for local MCP clients. Claude launches eu-finance as a subprocess, sends JSON-RPC requests over stdin, and reads responses from stdout. No network port is opened; the process lives and dies with the Claude session. This mode is the most secure for personal use.
Second, HTTP/SSE transport (MCP_TRANSPORT=http) — designed for remote or server-side deployments. A persistent Node.js process listens on a port (default 3001), Caddy reverse-proxies HTTPS, and multiple AI agents can connect simultaneously. Our production API at api.nexusforge.tools runs in this mode, serving 100% of remote requests via HTTP/SSE. In practice, stdio is the right choice for Claude Desktop and Claude Code; HTTP/SSE is for teams running shared infrastructure.
Data pipeline: real-time fetch → Redis cache → Claude
eu-finance does not store any financial data. Every tool call triggers a live HTTP request to the appropriate upstream:
get_ecb_rates/get_euro_exchange→ ECB Statistical Data Warehouse API and Frankfurterget_eu_inflation/get_eu_gdp/get_eu_unemployment→ Eurostat REST APIcompare_eu_economies→ parallel calls to all of the above
Responses are parsed from SDMX-XML or CSV format into clean JSON, then cached in Redis with per-dataset TTLs:
| Dataset | Cache TTL | Why |
|---|---|---|
| ECB key rates | 1 hour | ECB updates rates after Governing Council meetings only |
| EUR exchange rates | 1 hour | ECB publishes daily reference rates at ~16:00 CET |
| HICP inflation | 6 hours | Eurostat publishes monthly — intra-day refreshes add no value |
| GDP, unemployment | 24 hours | Quarterly / monthly cadence |
The cache means the first call per TTL window hits the upstream API; all subsequent calls within that window are served instantly from Redis. On the free plan, 100 calls/day is ample for personal use — a typical research session uses 5–15 calls.
Data privacy and hosting
eu-finance is designed with a zero-retention architecture. According to our data handling policy, the server does not log queries, store financial data returned, or transmit any user data to third parties. First, all computation happens in-memory; second, Redis stores only the upstream API responses (not your queries) with TTLs of 1–24 hours; third, no audio is captured at any point.
The server is hosted on Hetzner CX53 in Frankfurt, Germany — EU jurisdiction, GDPR-compliant infrastructure. We found that hosting in Germany (Frankfurt) reduces round-trip latency to ECB and Eurostat servers by approximately 40–60% compared to US-based hosting, while keeping all data processing within EU territory.
Troubleshooting
”Unknown tool” or eu-finance tools not appearing
This error means Claude Desktop is running with a config snapshot that was taken before you added eu-finance. Claude Desktop is designed to read the MCP server list once at startup — not dynamically — so adding a new server while the app is open has no effect until you restart.
Cause: Claude Desktop did not load the updated config — it reads MCP servers only at startup.
Fix: Fully quit Claude Desktop (not just close the window) and reopen it. On macOS: ⌘Q. On Windows: right-click the tray icon → Quit. Then relaunch.
My eu-finance data seems outdated or not updating
Cause: eu-finance caches API responses to avoid rate-limiting the upstream ECB and Eurostat APIs.
Cache TTLs:
- ECB interest rates: 1 hour
- EUR exchange rates: 1 hour
- HICP inflation, GDP, unemployment: 6–24 hours
If your data is older than these windows, the upstream API may itself have a delay (Eurostat publishes monthly data with a 30–45 day lag). For fresher ECB rate data, the Pro plan includes priority cache refresh.
Rate limit reached — “100 calls per day exceeded”
The rate limit is a per-day cap that resets at midnight UTC. In practice, 100 calls is sufficient for personal research sessions — for example, a hands-on analysis of 5 EU countries across 4 indicators uses roughly 20–25 calls. Automated pipelines or team usage typically require Pro or Scale.
The free plan resets at midnight UTC. To increase the limit immediately, upgrade to Pro (5,000 calls/day) or Scale (50,000 calls/day) at nexusforge.tools/pricing.
npx is slow on the first run
The first npx -y @nexusforgetools/eu-finance invocation downloads the package (~500 KB) from the npm registry. This is a one-time cost — subsequent starts use the locally cached version and take under a second. If you are on a restricted network, you can pre-install the package globally with npm install -g @nexusforgetools/eu-finance and use command: "eu-finance" (no npx) in the config.
npx -y @nexusforgetools/eu-finance command in their respective MCP configuration files. The eu-finance package uses the standard @modelcontextprotocol/sdk and requires no client-specific configuration.Frequently Asked Questions
Can I use eu-finance for free without an API key?
Yes. The free plan gives you 100 API calls per day with no API key and no credit card required. Just install the package with npx and start querying ECB and Eurostat data immediately.
Does eu-finance work with Cursor, Windsurf, or Cline?
Yes. eu-finance is a standard stdio MCP server built with the official @modelcontextprotocol/sdk. Any MCP-compatible client that supports stdio transport — including Cursor, Windsurf, Cline, and Continue — works with the same npx -y @nexusforgetools/eu-finance configuration as Claude Desktop. In practice, you copy the same server block into each client's MCP config file.
What version of Node.js is required for eu-finance?
Node.js 18 or higher. The package uses ECMAScript Modules (ESM) and the official @modelcontextprotocol/sdk. Run node --version to check.
My eu-finance data looks outdated — how do I get fresher data?
ECB interest rates cache for 1 hour, EUR exchange rates for 1 hour, HICP inflation and GDP for 6–24 hours. If you need more frequent refreshes, the Pro plan includes priority cache refresh. The cache resets automatically at each TTL boundary.
How do I verify eu-finance is working after setup?
After adding eu-finance to Claude Desktop and restarting the app, ask: 'What is the current ECB deposit facility rate?' Claude should respond with the current rate and its source date. If not, check that the MCP server appears in Claude Desktop settings under Developer → MCP Servers.
Can I run eu-finance on a remote server instead of locally?
Yes. Set the environment variable MCP_TRANSPORT=http and PORT=3001 to start eu-finance in HTTP/SSE mode instead of stdio. This is how the NexusForge production API runs. See the GitHub repository for the systemd service file example.
Continue reading
Start using EU financial data in Claude
Free plan available. Pro starts at €19/mo.