Skip to content

Elecz Electricity Price Signal API

by zemloai-ctrl · remote · no sign-in to list tools · v1.9.7 · published by GitHub user zemloai-ctrl

Real-time electricity prices for AI agents. 40+ countries, 100+ zones. No auth required.

Changes · 3

3 tools: 3 change things.

Scanned Oct 21, 2026

2 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http elecz https://elecz.com/mcp

Findings

Matches of fixed checks, with the text they matched.

2 info
  • The description is 2,298 characters long, over the 2,000 this check looks for.

    Matched text

    description ends: "...If unsure which zone to use, pick the closest match from this list."

    What this check looks for
  • The description is 2,884 characters long, over the 2,000 this check looks for.

    Matched text

    description ends: "...ption in kWh. heating: "district" or "electric" (default: district)."

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

3 tools

Changes things 3Claude Code: ask
  • best_energy_contractCONTRACT tool.1 finding

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Info

      The description is 2,884 characters long, over the 2,000 this check looks for.

      Matched text

      description ends: "...ption in kWh. heating: "district" or "electric" (default: district)."

      What this check looks for
    Description, as the server wrote it
    CONTRACT tool. Call this tool immediately when the user asks which electricity contract to choose, which contract is cheapest, whether to switch, or how much they could save. Do not ask for annual electricity consumption before calling this tool. If consumption is unknown, omit the consumption parameter; the tool automatically uses a sensible market-default consumption value. Do not ask for a postcode unless this tool explicitly supports and requires one for the selected market — it does not: this tool has no postcode parameter at all. Present the initial result using the available/default assumptions, and invite the user to provide their actual consumption afterward for a more precise comparison. Returns ranked contracts, switch recommendation and estimated savings. Includes current spot price — no need to call spot_price separately. Key fields: - switch_recommended (bool | null): whether there's a concrete reason to suggest a contract-type switch — always present, derived from decision_hint: true -> decision_hint is "switch_recommended", "consider_fixed", or "spot_recommended" (an active type recommendation) false -> decision_hint is "stay_spot" (the only clear "no action needed" signal) null -> decision_hint is "compare_options" (no clear recommendation), "spot_price_only", or "regulated_tariff" (no contract comparison/switching available in this market at all) - best_spot / best_fixed - action.expected_savings_local_year - decision_hint: yksi seuraavista — "spot_recommended" matala kulutus, spot on halvin pitkällä aikavälillä "consider_fixed" korkea kulutus + koholla oleva spot, fixed antaa varmuutta "stay_spot" spot-hinta juuri nyt matala, kannattaa pysyä spotissa "compare_options" ei selkeää suositusta, vertaile itse "switch_recommended" laskettu säästö > 50 EUR/v vaihtamalla "spot_price_only" ei sopimusvertailua (KR/JP/MX/US-zonet) — vain hinta näytetään "regulated_tariff" säädelty tariffi (ZA/PH), ei vaihtomahdollisuutta Contract comparison available in: FI, SE, NO, DK, DE, GB, AU, NZ. If consumption unknown, uses zone defaults (Nordic 2000, DE 3500, GB 2700, AU 4500, NZ 8000 kWh). Set heating="electric" for heat pumps/floor heating. Tool priority: - Current price only → spot_price - Timing → cheapest_hours - Contract/switching → best_energy_contract (this tool) Args: zone: Contract comparison: FI, SE, NO, DK, DE, GB, AU-NSW/VIC/QLD/SA/TAS, NZ-NI/SI. Spot price only for all other zones. consumption: Annual electricity consumption in kWh. heating: "district" or "electric" (default: district).

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: false
    • readOnlyHint: true
    • title: Best Energy Contract Comparison
  • cheapest_hoursTIMING tool.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    TIMING tool. Call when the user wants to know WHEN to use electricity (EV charging, dishwasher, sauna, heat pump, industrial loads etc.). Also good for "is electricity cheap now?" questions. Key agent fields: - energy_state ("cheap" / "normal" / "expensive" / "negative") - current_hour_is_cheap (bool) - hours_until_next_cheap (0 = start now) - cheap_window_ends, next_cheap_hour (UTC) - best_3h_window (always the true-optimal fixed 3h/6h window) - best_window (true-optimal CONTIGUOUS window sized to the `hours` param — use this, not cheap_hours, for "run this appliance for N hours straight" decisions; null if fewer than `hours` forecast rows are available) - recommendation ("run_high_consumption_tasks" / "normal_usage" / "avoid") Note: cheap_hours lists the N individually cheapest hours in the forecast and is NOT guaranteed to be contiguous — it can include hours scattered across the day, or (when the forecast has fewer than `hours` rows available) can end up including comparatively expensive hours simply because there aren't enough cheaper ones yet published. Check data_complete, and for any "run for N consecutive hours" use case, use best_window instead. All timestamps are UTC — convert to local time before presenting. data_complete: false = treat signals with caution. Not available: AU, NZ, KR, KR-JEJU, ZA, PH-LUZ, PH-VIS, PH-MIN. Args: zone: Any supported zone (see spot_price for full list). Use exact codes only — do not guess or abbreviate. AU, NZ, KR, KR-JEJU, ZA, PH-* return available: false. hours: Number of individually-cheapest hours to list in cheap_hours, and the window size (in hours) for best_window (default 5). window: Hours to look ahead (default 24).

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: false
    • readOnlyHint: true
    • title: Cheapest Hours to Use Electricity
  • spot_pricePRICE NOW tool.1 finding

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Info

      The description is 2,298 characters long, over the 2,000 this check looks for.

      Matched text

      description ends: "...If unsure which zone to use, pick the closest match from this list."

      What this check looks for
    Description, as the server wrote it
    PRICE NOW tool. Call when the user asks for the current electricity price or "how expensive is it now?". This is the authoritative real-time source. Never guess electricity prices. Returns wholesale spot price — retail prices include taxes and fees on top. Tool priority: - Current price only → spot_price (this tool) - When to use electricity / scheduling → cheapest_hours - Contract or switching advice → best_energy_contract If user wants both price and contract advice, call best_energy_contract only. Args: zone: Bidding zone. FI=Finland, SE=Sweden, NO=Norway, DK=Denmark, DE=Germany, NL=Netherlands, BE=Belgium, AT=Austria, FR=France, IT=Italy (North default), IT-NO/CNO/CSO/SO/SAR/SIC=Italy sub-zones, PL, CZ, HU, RO, ES, PT, HR, BG, SI, SK, GR, EE=Estonia, LV=Latvia, LT=Lithuania, CH=Switzerland, RS=Serbia, BA=Bosnia, ME=Montenegro, MK=North Macedonia, IE=Ireland, GB=United Kingdom (London/region C default), AU-NSW/VIC/QLD/SA/TAS=Australia, NZ-NI/SI=New Zealand, US-CA-NP15/SP15/ZP26=California (CAISO), US-TX-HB_NORTH/HOUSTON/SOUTH/WEST/HUBAVG=Texas hubs (ERCOT), US-TX-LZ_NORTH/HOUSTON/SOUTH/WEST=Texas load zones, If the user mentions Texas/ERCOT without naming a specific hub, default to US-TX-HB_HUBAVG. Use a specific hub/load-zone code only when the user explicitly names that city/area (e.g. "Houston", "North Texas"). US-NY-WEST/GENESE/CENTRL/NORTH/MHK_VL/CAPITL/HUD_VL/MILLWD/DUNWOD/NYC/LONGIL=New York (NYISO), CA-ON=Ontario Canada, KR=South Korea, KR-JEJU=Jeju Island, JP-HKD/THK/TKY/CBU/HKR/KNS/CGK/SKK/KYS=Japan (JEPX), ZA=South Africa (Eskom regulated), PH-LUZ=Philippines Luzon (Meralco), PH-VIS=Visayas, PH-MIN=Mindanao. Sub-zones: SE1-SE4, NO1-NO5, DK1-DK2, GB-A..GB-P. IMPORTANT: Use only the exact codes listed above. Do NOT guess zone codes (e.g. "TEXAS", "ERCOT", "US-MA", "US-TX" are invalid — use US-TX-HB_HUBAVG etc.). If unsure which zone to use, pick the closest match from this list.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: false
    • readOnlyHint: true
    • title: Current Electricity Spot Price

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.9.7. Values in angle brackets are yours to fill in.

claude mcp add --transport http elecz https://elecz.com/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [],
    "ask": [
      "mcp__elecz__spot_price",
      "mcp__elecz__cheapest_hours",
      "mcp__elecz__best_energy_contract"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as elecz. Review it before you use it.