Your AI now reads the grid.

EnergiMCP connects Denmark's energy data to Claude, ChatGPT or any MCP client. Electricity prices, carbon intensity, consumption, production and gas — 100 datasets from Energinet. Read-only, no API key, on a server you run.

Standard MCP · Claude, ChatGPT, Cursor or a local model · 100 datasets from Energi Data Service · No API key · MIT

You

When should I run the dishwasher today?

Assistant

get_electricity_prices · DK2 · today · 96 periods

Wait until the afternoon. The cheapest quarter-hour is 14:15 at 0.91 kr/kWh; the morning peak at 07:15 is 2.96 kr/kWh, more than three times as much. Average across the day is 1.43 kr/kWh.

You

Is that also the greenest time?

Assistant

get_carbon_intensity · DK2 · with forecast

Close enough. Carbon intensity is 128 g CO₂/kWh right now and the forecast bottoms out in the same afternoon window — solar is carrying the middle of the day, which is exactly why the price falls then.

DK2 · day-ahead, 23 September 2026

Spot price, excl. tariffs and VAT
Cheapest
0.91 kr
14:15 · per kWh
Average
1.43 kr
across 96 periods
Peak
2.96 kr
07:15 · per kWh
14:15 cheapest
0.91 kr
Day average
1.43 kr
07:15 peak
2.96 kr

Real values read from the Day-Ahead Prices dataset. Spot price only — tariffs, taxes and VAT roughly double what a household pays, and grid tariffs are themselves time-of-day dependent.

DK1 · cheapest today0.76 kr/kWh
Carbon intensity128 g CO₂/kWh
PowerSystemRightNow · 1 min
Wind & solar share25.8%
DK2 · peak 07:152.96 kr/kWh
Net import2,145 MW

100 datasets, from the live grid to 2005. One minute resolution at the fast end, hourly settlement data back two decades at the other. All of it open, none of it behind a key.

How EnergiMCP works

How EnergiMCP works

Energi Data Service is open public data, so there is no account, no key and no form. You add one line to your MCP client and start asking questions in plain language.

1
.mcp.json
{
  "mcpServers": {
    "energi": {
      "command": "npx",
      "args": ["-y", "energimcp"]
    }
  }
}

Add it to your client

One entry in Claude, ChatGPT, Cursor or any MCP client. It needs Node 24 and nothing else — no key to paste, no account to create.

2
When is power cheapest today?
get_electricity_prices
Cheapest at 14:15, 0.91 kr/kWh. The 07:15 peak is more than three times that.
And the greenest?
get_carbon_intensity
Close — the same afternoon window. Solar is carrying the middle of the day.

Ask in plain language

Prices, carbon intensity, wind share, what the grid is doing this minute. It picks the dataset, writes the query and reads the answer back.

3
describe_datasetDayAheadPrices
TimeUTCdatetime
PriceAreastring
DayAheadPriceDKKnumber · DKK/MWh
DayAheadPriceEURnumber · EUR/MWh
15 min resolution · 2025-10-01 → today

Go as deep as you like

Behind the shortcuts sit all 100 datasets, with their schemas, units and real coverage dates — down to five-minute data reaching back to 2005.

# claude_desktop_config.json, or .mcp.json in your project
{
  "mcpServers": {
    "energi": { "command": "npx", "args": ["-y", "energimcp"] }
  }
}
What people ask it

Questions that used to need a spreadsheet.

  • When is power cheapest tomorrow in DK1?
  • How much of the grid is wind right now?
  • What was the carbon intensity when I charged the car last night?
  • Compare gas system balance this month with last year.
  • Which municipalities added the most solar capacity since 2016?
  • Is Denmark importing or exporting right now, and from where?
  • Plot hourly consumption per grid area for January.
  • What does the day-ahead price do on a windy Sunday?
The catalogue

100 datasets, four publishers.

Everything Energinet publishes through Energi Data Service: 71 transmission-level electricity datasets, 15 gas, 10 distribution-level consumption and production, and 4 from Gas Storage Denmark.

100
datasets, every one Energinet publishes — 71 transmission electricity, 15 gas, 10 distribution, 4 gas storage.
1min
Fastest resolution, on the live grid state.
2005
Earliest hourly settlement data.
0
Keys, accounts or forms. It is open data.
22
Discontinued datasets — flagged, not hidden, with their replacement named.
Built for the model, not the dashboard. describe_dataset hands over every column with its type and unit before a query is written; summary turns 105,000 rows into per-column statistics; download_url keeps bulk extracts out of the conversation entirely.
Questions

Short answers.

Do I need an API key?

No. Energi Data Service is open data and needs no registration, no key and no contract. That is the whole setup story.

Which assistants work?

Any MCP client — Claude, ChatGPT, Cursor, Mistral or a local model. It speaks standard MCP over stdio, and streamable HTTP when you host it.

Is this official?

No. It is an independent open-source client for a public API, not affiliated with Energinet or Energi Data Service.

Are these the prices I pay?

No. Day-ahead spot prices exclude grid tariffs, taxes and VAT, which roughly double a Danish household bill. The tariffs themselves are in DatahubPricelist if you want to compute the real thing.

Why does it cache?

Rate limits are per dataset and deliberately tight: the platform expects about one request per update interval. Caching is what lets an agent ask follow-up questions without being blocked.

Can it write anything?

No. Every tool is read-only, and the upstream API has no write endpoints.

Open source

Software, not a service.

There is no hosted version and nothing to sign up for. Run your own copy. MIT licence.

Disclaimer. Use at your own risk. The software is provided as is, without warranty of any kind, and the authors accept no liability for how it is used or for any decision taken on the basis of the data it returns. It is not affiliated with Energinet, Energi Data Service, Anthropic or any energy company. Data is published by Energinet under their own terms; check those before relying on it commercially.

Open data, open source

Ask the grid anything.

One line in your MCP client and Denmark's entire energy record is a question away. No key, no account, no bill.