Next free-source huntWe check for new free data every weekday.
FinancialMCP serverFirst audited Nov 13, 2026

entsoe-mcp

European power-market data: day-ahead & balancing prices, load, generation, flows, outages. 47 zonesThe vendor's description, from its MCP Registry listing.

Passed public checksAudited Nov 13, 2026

Every public check ran and passed. Public audit: we connect as an AI client would, list the tools and check what they say. We do not run them. How we audit

Does it work?
YesConnected in 460 ms.
Sign-up?
None neededIt answered without any account or key.
Can it change things?
No, read-onlyAll 14 tools say they only read.
Endpointhttps://entsoemcp.com/mcp

Website Streamable HTTP · protocol 2025-11-25 · server version 1.0

What we checked, the evidence, and the tools it offers.

What we checked

Security

  • Passed: Connections are encrypted (HTTPS).

  • Passed: No hidden instructions found in tool text.

Safety labels

  • Passed: Every tool says whether it only reads or can change things.

Tools

  • Passed: 14 tools listed.

  • Passed: Every tool describes its inputs with a valid schema.

Protocol

  • Passed: The MCP handshake works (Streamable HTTP).

  • Passed: Protocol version 2025-11-25 (latest).

  • Passed: Unknown requests are refused.

Connection

  • Passed: The server responds.

Tools (14)

As the server describes them. The labels are the server's own: it says whether each tool only reads or can change things.

  • list_zonesList registered ENTSO-E bidding zones.Read-only
  • list_endpointsList supported ENTSO-E endpoint families.Read-only
  • list_psr_typesList production-type (psr_type) codes. Pass zone= to scope the answer. Most codes are ENTSO-E's B01..B25 and mean the same thing in every ENTSO-E zone. A few are source-native (source != "entsoe") a…Read-only
  • get_seriesGeneric time-series query for ANY registered series endpoint. One tool covers every (non-outage) endpoint in the registry, so adding a new dataset (call `list_endpoints()` to see the current 14) get…Read-only
  • get_day_ahead_pricesDay-ahead clearing price for a bidding zone, in the zone's trading currency (EUR for euro zones; the per-row `currency` column and the response `unit` say which — GB=GBP, PL/RO/BG carry local-currenc…Read-only
  • get_tb_spreadTop-Bottom (TBx) spread — daily battery-arbitrage benchmark. TBx = sum(top X priced hours) − sum(bottom X priced hours) over the day-ahead clearing prices for `zone` on `date`. The day is the SDAC ma…Read-only
  • get_loadActual or forecast load (MW). kind = actual | forecast | both. `start`/`end` default to UTC; `start` inclusive, `end` EXCLUSIVE. For a full calendar month set `end` to the first day of the next mont…Read-only
  • get_generationAggregated generation (MW) per production type. `start`/`end` default to UTC; `start` inclusive, `end` EXCLUSIVE. For a full calendar month set `end` to the first day of the next month. Pass `tz="lo…Read-only
  • get_crossborder_flowCross-border physical flow (MW) between two adjacent zones. `start`/`end` default to UTC; `start` inclusive, `end` EXCLUSIVE. `tz="local"` uses the FROM-zone's timezone; or pass an IANA name.Read-only
  • get_outagesGeneration-unit unavailability events (UMM). `start`/`end` default to UTC; `start` inclusive, `end` EXCLUSIVE. An outage is returned if it overlaps the window. Pass `tz="local"` or an IANA name to i…Read-only
  • compare_zonesCompare one endpoint across multiple zones. `start`/`end` default to UTC; `start` inclusive, `end` EXCLUSIVE. `tz="local"` is rejected (zones may differ); pass an explicit IANA tz like "Europe/Berli…Read-only
  • data_coverageShow ingest coverage and lag for (endpoint × zone) — call before queries if you're not sure whether the data is landed yet.Read-only
  • list_derivationsList computed-metric derivations available via get_derivation(). Each derivation is a metric computed on-the-fly from one or more landed endpoints (Tier-2 Parquet). Today: capture_price (monthly VWA…Read-only
  • get_derivationCompute **capture price**, **capture rate** (a.k.a. value factor / quality factor / Marktwertfaktor), **TBx battery-arbitrage spreads**, and other generation-weighted market metrics server-side from…Read-only

Audit history

  1. Nov 13Passed

What we sent

Every request in this audit, with the answer and how long it took. We never send credentials and never call a tool.

RequestAnswerTime
initializeHTTP 200460 ms
initializedHTTP 202396 ms
tools/listHTTP 200267 ms
resources/listHTTP 200154 ms
prompts/listHTTP 200129 ms
unknown-methodHTTP 200168 ms

Run this server, or disagree with the result?

Fix the issue and it shows in the next weekly audit, or email us to ask for a re-audit or to dispute a finding. Read how we audit for what each check means.