Day-Ahead Electricity Spot Prices for a Day, 15-Minute and Hourly: Finland, Nordics, Baltics, Germany (Sähkön hinta nyt)
sahkonhintanyt/prices
Day-ahead electricity spot prices for one day in a bidding zone (Finland, Estonia, Sweden SE1 to SE4, Norway NO1 to NO5, Denmark DK1 and DK2, Germany), as 96 prices of 15 minutes and 24 hourly averages, with the day's lowest, highest and average price, with or without VAT and in EUR, SEK, NOK or DKK. The day is today, tomorrow, yesterday or a date YYYY-MM-DD; tomorrow's prices appear about 14:15 Finnish time and before that the call is refused as a validation error. Source data: ENTSO-E / Nord Pool. Prices from Sähkön hinta nyt (sähkönhintanyt.org), credit: "Lähde: Sähkön hinta nyt (sähkönhintanyt.org), https://xn--shknhintanyt-gcb8w.org/". Served by Eden Engine; not an official Sähkön hinta nyt product.
Price
$0.0026 per call
You pay the price shown. If a call turns out to cost more than its quote, you pay the actual price, capped at twice the quote. No monthly minimum. Top-ups start at $0.50.
Data source
Lähde: Sähkön hinta nyt (sähkönhintanyt.org), https://xn--shknhintanyt-gcb8w.org/. Day-ahead prices from the ENTSO-E Transparency Platform via Sähkön hinta nyt. Served by Eden Engine; not an official Sähkön hinta nyt product.
Use it
Five steps: search, inspect, learn, run, settle. No per-tool setup; your agent reaches this tool through the meta-tools it already has.
Connect once and your AI can find and run this tool, and any other it needs.
// 1. search: find the tool
omnial_search({ query: "what you need" })
// 2. inspect: price and input schema
omnial_inspect({ tool: "sahkonhintanyt/prices" })
// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "sahkonhintanyt/prices" })
// 4. run: price the exact call first, then run it
omnial_execute({ tool: "sahkonhintanyt/prices", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "sahkonhintanyt/prices", input: { /* ... */ } })
// 5. settle: the call is charged when it finishes, nothing to doNot connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.
Pricing
Every charge this tool can incur.
| Charge | Price |
|---|---|
Per call | $0.0026 |
- Updated
- Oct 25, 2026
Input and output schemas
Input schema
{
"type": "object",
"required": [
"zone"
],
"properties": {
"day": {
"type": "string",
"default": "today",
"pattern": "^(today|tomorrow|yesterday|[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01]))$",
"description": "today, tomorrow, yesterday or a date YYYY-MM-DD. Default today. Tomorrow is published about 14:15 Finnish time (13:15 CET); before that, or for a date with no data, the call is refused as a validation error."
},
"vat": {
"enum": [
"1",
"0"
],
"type": "string",
"default": "1",
"description": "1 for prices with the zone's VAT (Finland 25.5 percent, Germany 19 percent), 0 for prices without VAT. Default 1."
},
"zone": {
"enum": [
"FI",
"EE",
"SE1",
"SE2",
"SE3",
"SE4",
"NO1",
"NO2",
"NO3",
"NO4",
"NO5",
"DK1",
"DK2",
"DE"
],
"type": "string",
"description": "Bidding zone: FI Finland, EE Estonia, SE1 to SE4 Sweden, NO1 to NO5 Norway, DK1 and DK2 Denmark, DE Germany."
},
"currency": {
"enum": [
"EUR",
"SEK",
"NOK",
"DKK"
],
"type": "string",
"default": "EUR",
"description": "Currency of the figures: EUR, SEK, NOK or DKK; the unit follows (cents or ore per kWh). Default EUR."
}
},
"additionalProperties": false
}Output schema
{
"type": "object",
"required": [
"zone",
"available"
],
"properties": {
"tz": {
"type": "string",
"description": "The zone's time zone."
},
"date": {
"type": "string",
"description": "The local calendar day, YYYY-MM-DD."
},
"unit": {
"type": "string",
"description": "Unit of every price, for example c/kWh or öre/kWh."
},
"zone": {
"type": "string",
"description": "The bidding zone."
},
"hours": {
"type": "array",
"items": {
"type": "object",
"required": [
"start",
"end",
"price"
],
"properties": {
"end": {
"type": "string",
"description": "Period end, UTC ISO 8601."
},
"price": {
"type": "number",
"description": "Price for the period, in the answer's unit."
},
"start": {
"type": "string",
"description": "Period start, UTC ISO 8601."
}
},
"additionalProperties": true
},
"description": "The 24 hourly averages, in time order."
},
"points": {
"type": "array",
"items": {
"type": "object",
"required": [
"start",
"end",
"price"
],
"properties": {
"end": {
"type": "string",
"description": "Period end, UTC ISO 8601."
},
"price": {
"type": "number",
"description": "Price for the period, in the answer's unit."
},
"start": {
"type": "string",
"description": "Period start, UTC ISO 8601."
}
},
"additionalProperties": true
},
"description": "The 96 prices of 15 minutes, in time order (92 or 100 on the days the clocks change)."
},
"source": {
"type": "string",
"description": "The upstream data source, ENTSO-E Transparency Platform."
},
"summary": {
"type": "object",
"properties": {
"avg": {
"type": "number",
"description": "Average price."
},
"max": {
"type": "number",
"description": "Highest price."
},
"min": {
"type": "number",
"description": "Lowest price in the period, in the answer's unit."
},
"max_start": {
"type": "string",
"description": "Start of the most expensive period, UTC ISO 8601."
},
"min_start": {
"type": "string",
"description": "Start of the cheapest period, UTC ISO 8601."
},
"negative_quarters": {
"type": "integer",
"description": "Number of periods with a negative price."
}
},
"description": "Price statistics.",
"additionalProperties": true
},
"complete": {
"type": "boolean",
"description": "Whether all periods of the day are present."
},
"currency": {
"type": "string",
"description": "Currency code."
},
"vat_rate": {
"type": "number",
"description": "VAT percentage included in the prices, 0 without VAT."
},
"available": {
"type": "boolean",
"description": "Always true in an answer: a day with no prices is refused as a validation error."
},
"updated_at": {
"type": "string",
"description": "When the service last refreshed the day, UTC ISO 8601."
},
"summary_hours": {
"type": "object",
"properties": {
"avg": {
"type": "number",
"description": "Average price."
},
"max": {
"type": "number",
"description": "Highest price."
},
"min": {
"type": "number",
"description": "Lowest price in the period, in the answer's unit."
},
"max_start": {
"type": "string",
"description": "Start of the most expensive period, UTC ISO 8601."
},
"min_start": {
"type": "string",
"description": "Start of the cheapest period, UTC ISO 8601."
},
"negative_quarters": {
"type": "integer",
"description": "Number of periods with a negative price."
}
},
"description": "Price statistics.",
"additionalProperties": true
},
"resolution_minutes": {
"type": "integer",
"description": "Length of each price period in minutes (15)."
},
"source_resolution_minutes": {
"type": "integer",
"description": "Resolution of the source data in minutes; 60 for older days that were published hourly."
}
},
"description": "The service's answer for the day.",
"additionalProperties": true
}