get_series
Generic 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) gets an
MCP surface automatically — no new tool to learn.
Argument shape adapts to the endpoint:
• single-zone (day_ahead_price, actual_load, generation_per_type, …)
→ pass zone="DE_LU"
• cross-zone (crossborder_flow, scheduled_exchanges,
net_transfer_capacity_dayahead)
→ pass from_zone="DE_LU" AND to_zone="FR"
• psr-dependent (generation_per_type, wind_solar_forecast,
installed_generation_capacity)
→ optionally filter via psr_types=["solar","wind_onshore"]
start/end: UTC by default; start inclusive, end EXCLUSIVE
(for "all of April 2026" use end=2026-05-01). Pass tz="local" or an
IANA name to interpret as wall-clock in that timezone.
aggregation: 'raw' (default — native PT15M/PT60M per endpoint),
'hourly' (AVG over quarters → one row per hour, useful for the
growing list of PT15M-stored endpoints like DE_LU day_ahead_price),
'daily', or 'monthly'. For day-ahead prices specifically the auction
still clears hourly even where stored at PT15M, so AVG=any-quarter;
SUM would 4× over-count.
Outage-family endpoints (different schema) stay on get_outages().
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| tz | No | ||
| end | Yes | ||
| zone | No | ||
| start | Yes | ||
| to_zone | No | ||
| endpoint | Yes | ||
| from_zone | No | ||
| psr_types | No | ||
| aggregation | No | raw |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||