Skip to main content
Glama
lars-kerkhof

Steddion Energy MCP Server

by lars-kerkhof

Steddion Energy MCP Server

MCP-server voor de Nederlandse energiemarkt: day-ahead prijzen, onbalansprijzen, weersvoorspellingen en BESS-businesscases.

Tools

Tool

Beschrijving

get_day_ahead_prices

Uurlijkse day-ahead prijzen (EUR/MWh) via ENTSO-E

get_imbalance_prices

Kwartierlijkse onbalansprijzen via TenneT

get_weather_forecast

Wind, zon (GHI) en temperatuur via Open-Meteo

calculate_bess_business_case

Day-ahead arbitrage-opbrengst voor een batterij

Related MCP server: mcp-neso

Installatie & draaien

Vereisten

  • Python 3.11+

  • uv (package manager)

Installeren

git clone https://github.com/lars-kerkhof/mcp-steddion.git
cd mcp-steddion
uv sync

Environment variabelen

cp .env.example .env
# Bewerk .env en vul je ENTSO-E API token in (optioneel — zonder token draait de server op mock-data)

Variabele

Vereist

Beschrijving

ENTSOE_API_TOKEN

Nee

Token van ENTSO-E Transparency Platform. Zonder token worden realistische mock-data gebruikt.

HOST

Nee

Server host (default: 0.0.0.0)

PORT

Nee

Server port (default: 8000)

Server starten

uv run python -m steddion_mcp

De server draait dan op http://localhost:8000/mcp.

Tests draaien

uv run pytest

Koppelen aan ChatGPT (Developer Mode)

ChatGPT ondersteunt geen lokale stdio-servers. Je moet de server via HTTPS bereikbaar maken.

Stap 1: Server starten

uv run python -m steddion_mcp

Stap 2: Tunnel opzetten

Kies een van:

Cloudflared (aanbevolen):

cloudflared tunnel --url http://localhost:8000

ngrok:

ngrok http 8000

Je krijgt een HTTPS-URL, bijvoorbeeld https://abc123.trycloudflare.com.

Stap 3: Connector toevoegen in ChatGPT

  1. Open ChatGPT → Settings → Apps/Connectors

  2. Schakel Developer Mode in

  3. Klik Add Connector → Custom

  4. Vul de URL in: https://<jouw-tunnel-url>/mcp

  5. Sla op — de tools verschijnen nu in ChatGPT

Architectuur

steddion_mcp/
├── server.py      # FastMCP server, tool-registraties
├── entsoe.py      # ENTSO-E day-ahead prijzen
├── tennet.py      # TenneT onbalansprijzen
├── weather.py     # Open-Meteo weersdata
├── bess.py        # BESS businesscase calculator
├── models.py      # Pydantic response-modellen
├── mock_data.py   # Realistische mock-data generators
└── __main__.py    # Entry point

Mock-data

Alle tools vallen automatisch terug op deterministische mock-data wanneer:

  • De ENTSOE_API_TOKEN ontbreekt (day-ahead prijzen)

  • De TenneT API niet bereikbaar is (onbalansprijzen)

  • De Open-Meteo API niet bereikbaar is (weer)

Mock-data is herkenbaar aan het veld source: "mock" in de response.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Provides access to Dutch weather data (current conditions, forecasts, alerts, and historical data) via the KNMI API, with automatic location name resolution for Dutch cities.
    1
    13 npm
    1
    Apache 2.0
  • A
    license
    Not graded
    quality
    B
    maintenance
    Access Great Britain electricity grid open data from the NESO API, enabling queries about generation, demand, and market data.
    3 npm
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables access to European electricity data including day-ahead prices, probabilistic forecasts, carbon intensity, and cheapest-window optimization for 43 bidding zones.
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables querying European electricity generation, prices, and capacity data from Fraunhofer ISE's Energy-Charts platform.
    7 npm
    MIT