voltcast
Server Details
European day-ahead electricity prices (43 zones), accuracy-published forecasts, carbon, optimize.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- Voltcast-com/mcp
- GitHub Stars
- 0
- Server Listing
- Voltcast MCP Server
TDQS
Scored across 7 tools
Each tool targets a clear, distinct data domain: prices are split between day-ahead and real-time, carbon and renewables are separated, and cheapest_window is explicitly framed as an action-ranking tool built on cost rather than a raw data feed. Even related tools like get_forecast and get_prices are distinguishable by their purpose and output type.
Most tools follow a consistent get_<resource> pattern, with list_zones as a reasonable variant for enumeration. However, cheapest_window breaks the verb-first convention, making it the one naming outlier in an otherwise coherent set.
Seven tools is well-scoped for a European electricity data API covering zones, prices, forecasts, carbon, renewables, and action windows. Each tool earns its place without overlapping redundancy or unnecessary surface area.
The tool surface covers the expected read-only domain comprehensively: zone discovery, day-ahead and real-time prices, price forecasting, carbon intensity, renewable generation forecasts, and derived cost-based windows. The explicit separation of live carbon data from a non-forward-looking carbon mode suggests intentional completeness rather than a gap.
Available Tools
7 toolscheapest_windowAInspect
Rank Home+ action windows by household cost. Experimental carbon/balanced modes use a disclosed trailing historical production-mix profile—not a forward carbon forecast—and support no emissions-reduction claim.
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | ||
| from | No | ||
| zone | Yes | ||
| count | No | How many windows (default 3) | |
| tariff | No | Optional variable household bill inputs; fixed monthly charges are excluded. | |
| objective | No | Ranking objective (default cost). Carbon/balanced are experimental historical-profile heuristics, not forward carbon forecasts. | |
| duration_minutes | Yes | Window length in minutes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of behavioral disclosure. It does this well by clearly flagging that carbon/balanced modes use a trailing historical production-mix profile, are experimental, and support no emissions-reduction claim. This prevents a likely misinterpretation of the carbon objective, adding meaningful transparency beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler: the first front-loads the tool's purpose, and the second efficiently covers a critical caveat about the experimental modes. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers purpose and an important behavioral caveat, but there is no output schema and the description does not explain what the returned ranked windows look like or when to choose this over sibling tools. Given the 7-parameter schema with nested objects, a bit more guidance on expected output or usage context would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 57%, with descriptions for count, tariff, objective, and duration_minutes. The description adds value by clarifying the objective parameter's experimental nature and 'household cost' semantics for tariff, but it does not compensate for the undocumented to, from, and zone parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action and resource: 'Rank Home+ action windows by household cost.' This clearly communicates the tool's core function and distinguishes it from sibling tools that fetch raw prices, forecasts, or carbon data, though it does not explicitly name a sibling for contrast.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: when you need cheapest cost-ranked action windows rather than raw price/forecast data. However, it does not explicitly state when to prefer this tool over siblings like get_prices or get_forecast, nor does it mention any exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_carbonCInspect
Carbon intensity (gCO2eq/kWh) and green score (0-100 low-carbon share) derived from the live generation mix.
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | ||
| from | No | ||
| zone | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility for behavioral disclosure. It mentions the derived nature of the data but omits details like authentication, rate limits, or whether the data is cached.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no extraneous words, but it is too brief to convey necessary information. It achieves conciseness at the expense of completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of output schema, annotations, and parameter coverage, the description is insufficient for an agent to use the tool correctly. It does not describe input usage or output structure beyond a high-level summary.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain any parameter semantics. It fails to clarify what 'zone', 'to', or 'from' represent, leaving the agent to infer meaning from names alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly defines the tool's output: carbon intensity and green score from the live generation mix. While it doesn't explicitly differentiate from sibling tools like get_renewables, the resource is distinct enough that an agent can infer its purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives like get_renewables or get_forecast. The description lacks context about prerequisites or typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_forecastAInspect
Probabilistic price forecast (P50 curve; P10/P90 on Pro+) up to 7 days ahead. Home and grandfathered Free keys are scoped to their selected zone. Accuracy published daily at voltcast.com/accuracy.
| Name | Required | Description | Default |
|---|---|---|---|
| zone | Yes | ||
| horizon | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden. It discloses meaningful traits: output variants depend on plan (P10/P90 only on Pro+), Home and grandfathered Free keys are scoped to a selected zone, forecasts extend up to 7 days, and accuracy is published externally. It stops short of describing response shape, timezone, or units, so there is still some room.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences with no filler. The core behavior is front-loaded, the key-scoping caveat comes second, and the accuracy link is useful external context. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter tool with no output schema and no annotations, the description is arguably 'mature': it covers what the forecast looks like, the allowed maximum horizon, plan restrictions, and an accuracy resource. It is missing exact zone-value guidance and explicit default behavior for horizon, but these are partially addressed by the schema enum and sibling tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must help explain the parameters. It adds context for the forecast horizon ('up to 7 days ahead') and implies zone selection, but it does not explicitly map the `horizon` values `48h`/`7d` or explain how to look up valid zones. The `list_zones sibling partially compensates.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies a probabilistic price forecast for future prices and introduces the P50/P10/P90 distinction, which separates it from price and real-time price siblings. It does not use an explicit verb phrase like 'retrieves' or 'gets', but the name get_forecast together with the description makes the resource unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: an agent should select this when it needs a forward-looking probabilistic price forecast rather than current or historical prices. However, the description does not explicitly say when to prefer it over get_prices or get_realtime_prices, nor does it frame any exclusion; the main operational note is about key scoping, not tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_pricesBInspect
Day-ahead electricity prices in each zone's native currency and native market resolution. Requires an API key; Home starts at voltcast.com/register?plan=home.
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | ISO 8601 end (default: tomorrow) | |
| from | No | ISO 8601 start (default: yesterday) | |
| zone | Yes | Bidding zone code, e.g. 'DE-LU' | |
| resolution | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must relay all behavioral context. It does disclose that an API key is required and that data is in native currency and native market resolution, which is meaningful. It does not address limits, pagination, or whether the result is a list or single value, so there are still gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core purpose, and every sentence carries information. The auth/registration note is concise and directly actionable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The is enough to understand domain and auth, but no output schema is provided, and the description does not explain what the result structure looks like or how the selected zone and date range shape the response. With four parameters and no output schema, a bit more clarity on the returned data shape would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents zone, from, and to with descriptions; only 'resolution' lacks a description. The description adds value with the 'native market resolution' terminology, supporting the resolution enum. However, it does not explain the resolution parameter's default or the impact of 'hourly' vs 'native'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool returns day-ahead electricity prices with native currency and native market resolution. This differentiates it from get_realtime_prices, which suggests current/real-time data. It does not name the exact sibling alternatives, but the day-ahead qualifier makes the core purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions a real requirement for an API key but does not explain when to use this tool instead of get_realtime_prices, get_forecast, or other siblings. No explicit when-to-use or when-not-to-use guidance. The day-ahead distinction is implied but left to the agent to infer.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_realtime_pricesAInspect
Explicitly labeled real-time market prices (currently WEIM), kept separate from day-ahead curves. Requires an API key.
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | ISO 8601 end (default: now) | |
| from | No | ISO 8601 start (default: last 24h) | |
| zone | Yes | Market reference code, e.g. 'US-WEIM-AZPS' | |
| market | No | Optional market filter, e.g. 'weim' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden for behavioral disclosure. It adds the API key requirement and current market scope (WEIM), which is useful, but it does not mention rate limits, response format, pagination, or any potential side effects. This is a modest but non-trivial disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core purpose, and contains no redundant information. Every word contributes to understanding the tool's scope or requirements, making it exceptionally efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (4 params, all schema-described, no output schema), the description provides adequate context: real-time price retrieval, WEIM market focus, and API key requirement. It does not explain return value structure or default behaviors beyond schema defaults, but these gaps are partially covered by the schema and the tool's straightforward nature.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds context that the tool returns real-time WEIM prices, which aligns with the zone and market parameters, but it does not explain any parameter behavior beyond what the schema already provides. No additional parameter-level detail is supplied.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as retrieving real-time market prices, explicitly scoped to WEIM, and distinguishes it from day-ahead curves via the sibling get_prices. The verb+resource is implied by the name and confirmed by the description, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The mention of 'currently WEIM' and 'separate from day-ahead curves' implies this tool is for real-time prices, but it does not explicitly state when to choose this over get_prices or other siblings. It provides no direct alternative guidance, only a subtle contrast, so usage is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_renewablesAInspect
Day-ahead wind + solar generation forecasts: the TSO's official forecast AND Voltcast's own model (volt-res-1) with q10-q90 bands, beside realized generation, with head-to-head verification (who beats whom, disclosed). Pro/Scale.
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | ISO 8601 end | |
| from | No | ISO 8601 start | |
| zone | Yes | Bidding zone code, e.g. 'DE-LU' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden and does well by disclosing the return contents: TSO and Voltcast forecasts, q10-q90 bands, realized generation, and head-to-head verification. It goes beyond a simple 'get data' and explains the tool's comparative feature, though it omits error handling or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense sentence that front-loads the main purpose and packs in relevant details (model name, bands, realized data, verification). The trailing 'Pro/Scale' is somewhat unstructured but does not waste significant space. It is concise given the amount of information conveyed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no output schema, the description explains the key return components (forecasts, bands, realized generation, comparison). It is complete enough for an agent to understand what will be received, though it lacks units or temporal resolution specifics. The sibling context is not fully addressed, but overall the description is robust.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the three parameters, so the baseline is 3. The description adds no additional meaning about the zone, from, or to parameters, but the schema already provides sufficient semantic details (ISO 8601, bidding zone examples).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool provides day-ahead wind and solar generation forecasts, including both the TSO official forecast and Voltcast's own model, distinguished from siblings like get_prices or get_real_time_prices by its specific renewable generation focus. It names a concrete resource and deliverable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for renewable generation forecasts but does not explicitly state when to prefer this tool over siblings such as get_forecast or get_prices. No exclusions or alternative tool names are provided, leaving the selection to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_zonesAInspect
List all supported European bidding zones with codes, names, and capabilities. No auth required.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses 'No auth required' and implies it lists all supported zones, but lacks details on data freshness, rate limits, or completeness guarantees.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence that is front-loaded with purpose and key details. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless tool with no output schema, the description covers the essential: what it lists (zones with codes, names, capabilities) and that no auth is required. Could mention return format or pagination, but not necessary for such a simple tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has 0 parameters with 100% schema description coverage. Baseline is 4; description adds no parameter info but none is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'list', the resource 'supported European bidding zones', and the output details 'codes, names, and capabilities'. It distinguishes from sibling tools which focus on prices, forecasts, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states 'No auth required', indicating ease of use. Does not explicitly state when not to use or provide alternatives, but for a simple list tool, the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- Changed
cheapest_window2 fields changed- added
Input schema / properties / objectiveAdded value: +{ + "description": "Ranking objective (default cost). Carbon/balanced are experimental historical-profile heuristics, not forward carbon forecasts.", + "enum": [ + "cost", + "carbon", + "balanced" + ], + "type": "string" +} - added
Input schema / properties / tariffAdded value: +{ + "additionalProperties": false, + "description": "Optional variable household bill inputs; fixed monthly charges are excluded.", + "properties": { + "grid_fee_eur_kwh": { + "maximum": 2, + "minimum": 0, + "type": "number" + }, + "supplier_markup_eur_kwh": { + "maximum": 2, + "minimum": 0, + "type": "number" + }, + "vat_percent": { + "maximum": 50, + "minimum": 0, + "type": "number" + } + }, + "type": "object" +}
1 tool update
- Added
get_realtime_prices
6 tool updates
- First observed
cheapest_window - First observed
get_carbon - First observed
get_forecast - First observed
get_prices - First observed
get_renewables - First observed
list_zones
Related MCP Connectors
European power-market data: day-ahead & balancing prices, load, generation, flows, outages. 47 zones
Real-time electricity prices for AI agents. 40+ countries, 100+ zones. No auth required.
Real-time electricity price signals for AI agents. Spot prices, cheapest hours, and contract recommendations. 31 countries across Europe and Oceania. No authentication required.
Live and historical electricity prices and demand for 25 grids; carbon intensity for GB.
Related MCP Servers
- FlicenseNot gradedqualityBmaintenanceProvides real-time electricity prices, cheapest hours, and contract comparison for 40+ countries, enabling AI agents to make energy-aware decisions.4-
- AlicenseBqualityAmaintenanceProvides real-time European and GB electricity grid data via MCP, including generation, prices, carbon intensity, and grid infrastructure.4445 npm6MIT
- AlicenseAqualityBmaintenanceLive and historical electricity prices, demand, generation mix and carbon intensity for 25 grid zones (US, Europe, GB, Australia). Hosted endpoint plus local stdio bridge; free sample mode, free API key, or x402 pay-per-call.6MIT
- FlicenseNot gradedqualityDmaintenanceMCP server for real-time electricity prices, carbon intensity, and energy analytics across 41+ zones in Europe, Great Britain, the United States, and Australia. Query live prices, compare zones, check gas storage levels, get green scores, find optimal charging windows, and access advanced analytics. Free Basic tier requires no API key. Install via npx gridpulse-mcp or connect directly via Streamab-
Glama MCP Gateway
Add one secure layer between your agents and this server.