Skip to main content
Glama

entsoe-mcp

Get generation by fuel

get_generation
Read-onlyIdempotent

Aggregated 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="local" or an IANA name to interpret start/end as wall-clock in that timezone.

GB/UK: ENTSO-E's GB generation ended 2021-06-15. For later windows use get_series(endpoint="generation_mix", zone="GB", …) (NESO, 2009→now, its own wind codes — list_psr_types(zone="GB") first); a window past a series' end answers with series_ended, naming that endpoint.

If you're computing a generation-weighted price metric — capture price, capture rate, value factor, merchant-PPA achieved price — use get_derivation(slug="capture_price", …) instead. It runs server-side over the full window and returns monthly rows; no row cap, no pagination.

Input Schema

NameRequiredDescriptionDefault
tzNo
endYes
zoneYes
startYes
psr_typesNo
aggregationNoraw

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/idempotent/non-destructive, so the bar is lower, and the description still adds real behavior: `end` is EXCLUSIVE while `start` is inclusive, `tz` switches between UTC defaults and wall-clock interpretation, and an out-of-range window returns a `series_ended` response naming the endpoint. It stops short of stating pagination or row limits for this tool (only implying them by contrast with get_derivation), so not a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the resource and unit, then temporal semantics, then two clearly delineated routing cases. Every sentence is functional — no restating of the name or filler — despite covering a lot of ground.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need no explanation, and temporal semantics are well covered. But three of six parameters (including `aggregation`, which changes the result granularity) are undocumented in both schema and description, and `psr_types` is only implicitly pointed at via a GB-specific aside about list_psr_types.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must carry the load. It explains start/end/tz thoroughly, including the month-boundary trick and timezone interpretation, but says nothing about `zone`, `psr_types` (which looks up the accepted codes), or `aggregation` — the last is a string with default "raw" and no enum, leaving the agent guessing at valid values and their effect on output shape.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific resource and metric — aggregated generation in MW per production type — which an agent can distinguish from get_series, get_load, and get_derivation without opening any schema. The description also names the sibling tools that take over in the cases where this one is the wrong call.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit routing rules: use get_series(endpoint="generation_mix", zone="GB") for GB windows after 2021-06-15, and use get_derivation(slug="capture_price") for generation-weighted price metrics. Both name the alternative and the condition that selects it, which is exactly what an agent needs to avoid the wrong tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources