Skip to main content
Glama

Renewably

Your home

plan_home
Read-onlyIdempotent

A home's past year on every tariff in list_tariffs and at Ofgem's price cap – and what switching tariff, an electric car, a heat pump, solar panels or a battery would save, each added to everything before it (tariff, car, heating, solar, battery). Each of car, heating, solar and battery is something the home has (it explains the bill) or is considering. Totals are electricity, gas at the price cap and petrol or diesel – only what changes.

Input Schema

NameRequiredDescriptionDefault
carNoWhat the home drives now: `petrol` (default) or `diesel` (counted only with consider_ev=1), `ev` (the bill includes an electric car), or `none`.petrol
gasNoWith heating=gas and consider_heat_pump=1: gas a year on the bill, kWh (1000-60000, default 9500).
kwpNoPanels, kWp (0.2-50; default 4 on a roof, 0.8 for a plug-in kit, at most 2) – the first roof face's, with more faces.
mpgNoWith consider_ev=1: its real-world mpg (10-120; default the average car on the road, 36 petrol, 42 diesel).
mpkNoElectric car, miles per kWh at the battery (1.5-6, default 3.3).
pplNoWith consider_ev=1: what you pay, p/litre (50-400; default the UK weekly average over the past year).
kwp2NoRoof panels on a second face, kWp (0.2-50), with `aspect2` and `tilt2` – and `kwp3`, `aspect3`, `tilt3` for a third. One inverter for them all.
kwp3NoRoof panels on a third face, kWp (0.2-50).
scopNoWith consider_heat_pump=1: the installer's seasonal efficiency for heating (1.5-6; default a typical installation).
tiltNoOr their exact angle from flat, degrees (0-90). Replaces `pitch` (or `mount`).
unitNoWith tariff=custom: its unit rate, p/kWh (5-100).
boostNoWith heating=storage: the share of their heat from evening boost at the day rate, % (0, 10 or 25; default 10).10
milesNoCar miles a year (500-40000, default 7100).
mountNoWith panels=plug_in: its angle from flat – 90 (upright on a balcony or wall, default), 60 (leaning), 30 (on a stand), 10 (flat).90
pitchNoThe roof: 35 (pitched, default), 20 (shallow), 50 (steep), 10 (flat).35
shiftNoShare of everyday use run at the day's cheapest times, % (0, 15 or 30; default 0) – for fine-tuning.0
solarNo`no` (default), `have`, or `consider`.no
tilt2NoThe second face's angle from flat, degrees (0-90, default 35).
tilt3NoThe third face's angle from flat, degrees (0-90, default 35).
usageNoElectricity a year as on the bill, kWh – what's bought now (500-30000, default 2500).
aspectNoThe way the panels face: S (default), SE, SW, E, W, NE, NW, N.S
boilerNoWith consider_heat_pump=1: `condensing` (default) or `older` (pre-2005).condensing
exportNoHow export is paid: `paired` (default: each tariff's own export tariff), `fixed` (at `export_rate`), `fit` (the Feed-in Tariff's deemed export), `none`, or an export tariff's key from list_tariffs?direction=export – used with every tariff that can have it, and each tariff's own with the rest.paired
hp_kwhNoWith heating=heat_pump: its own use, kWh a year, if known (0-20000; default estimated).
panelsNoWith solar=have or consider: `roof` (default) or `plug_in` (a plug-in kit: its inverter capped at 800 W, export unpaid, panels up to 2 kWp).roof
regionYesAgile region: a letter A-P or the slug from list_regions (eg `C` or `london`); list_regions lists well-known places in each.
switchNo1 (default) to find the best tariff at each step, staying put included; 0 to keep `tariff` throughout.1
tariffNoThe tariff the home is on: `price-cap` (default), a key from list_tariffs, `tracker` (Octopus Tracker, off sale but priced for the homes on it), or `custom` with `unit` and `standing`.price-cap
aspect2NoThe second face's direction: S (default), SE, SW, E, W, NE, NW, N.
aspect3NoThe third face's direction.
batteryNo`no` (default), `have`, or `consider`.no
bearingNoOr the exact compass bearing the panels face, degrees (0-359; south 180). Replaces `aspect`.
chargerNoHome charger, kW (2-22, default 7).
daytimeNoWhether anyone's home in the day: `usual` (default), `out` (rarely – out at work), or `home` (most days). Decides how much of the panels' output the home uses.usual
heatingNoWhat heats the home now: `gas` (default), `oil` or `lpg` (a boiler), `solid` (wood or coal: `solid_fuel` says which) – counted only with consider_heat_pump=1 – `heat_pump` (the bill includes one), `storage` (storage heaters), `electric` (panel or other direct electric heaters), or `other`.gas
hp_costNoWith consider_heat_pump=1: the quote after grants, £ (0-100000; default typical, outside Scotland).
plug_inNoHour the car is plugged in, 0-23 local (default 18).
preheatNoWith heating=electric: `1` to heat from 1pm rather than 4pm–7pm when that's cheaper (default `0`).0
heat_pplNoWith heating=oil or lpg and consider_heat_pump=1: what's paid a litre, pence (20-300). Oil defaults to a recent national average; LPG has no default and needs it.
keep_gasNoWith consider_heat_pump=1: 1 to keep gas for cooking (default 0).0
plug_outNoHour it's unplugged, 0-23 local (default 7; the same as `plug_in`: always plugged in).
standingNoWith tariff=custom: its standing charge, p/day (0-200).
applianceNoWith heating=solid: `stove` (a stove or boiler, default) or `fire` (an open fire).stove
night_gmtNo`1`: the meter keeps GMT, so its night hours are an hour later in summer (default `0`).0
replacingNoWith consider_heat_pump=1: 1 if the boiler is due for replacing anyway (default 0).0
standby_wNoBattery standby draw, W (0-200, default 20).
battery_kwNoBattery power, kW (0.5-15, default 3).
charge_effNoCar charging efficiency, % (70-100, default 90).
heat_spendNoWith heating=solid and consider_heat_pump=1: what the home spends on it a year, £ (10-20000). Needed, with heat_amount.
heater_kwhNoWith heating=storage or electric: the heaters' own use, kWh a year, if known (0-30000; default estimated). Hot water is taken as an immersion heater.
round_tripNoBattery round-trip efficiency, % (60-100, default 90).
solar_costNoWith solar=consider: the quote or kit price, £ (0-100000; default typical).
solid_fuelNoWith heating=solid: `logs` (default), `pellets` or `coal` (coal or smokeless fuel).logs
storage_kwNoWith heating=storage: all the heaters' input power together, kW (1-30, default 6).
battery_kwhNoBattery, usable kWh (0.5-40, default 5).
consider_evNoWith a petrol or diesel car: 1 to see what an electric car replacing it would save (default 0).0
export_rateNoYour fixed export rate, p/kWh (0-100, default 12), with `export=fixed`.
heat_amountNoWith heating=solid and consider_heat_pump=1: how much the home buys a year – logs in loose cubic metres, pellets and coal in kg (0.1-50000). Needed, with heat_spend.
heat_litresNoWith heating=oil or lpg and consider_heat_pump=1: litres a year (100-10000; default as much heat as 9500 kWh of gas).
inverter_kwNoSolar inverter rating, kW (0.5-50; default no limit).
night_startNoThe meter's seven night hours, for Economy 7 tariffs and meter-switched heaters: the half hour they start, 0-47 local (44 is 22:00 ... 3 is 01:30; default 1, 00:30-07:30).1
battery_costNoWith battery=consider: the quote, £ (0-100000; no default – no payback without one).
export_limitNoExport limit set by the network operator, kW (0.5-50; default none).
storage_meterNoWith heating=storage: `1` (default) the meter switches them on in its night hours (and Snug Octopus can schedule them), `0` their own timer, in the cheapest night half hours.1
battery_exportNoWhat the battery may export: `never`, even where the export tariff peaks; `solar`, only what it stored from the panels, even on Octopus's; `terms` (default), what the terms pay for – on Octopus's anything it holds, on other export tariffs only what it stored from the panels; `all`, anything it holds, on any export tariff (check the supplier pays for grid-charged export).terms
battery_charge_kwNoBattery charging power, kW (0.5-15, default `battery_kw`).
consider_heat_pumpNoWith a boiler (heating=gas, oil or lpg), wood or coal (heating=solid), or storage or electric heaters (heating=storage or electric): 1 to see what a heat pump replacing them would save (default 0).0
battery_discharge_kwNoBattery discharging power, kW (0.5-15, default `battery_kw`).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint, so the safety profile is covered. The description adds genuinely useful behavioral context beyond that: results are cumulative across measures in a stated order, and each of car/heating/solar/battery is interpreted as either something the home has (explaining the bill) or something being considered. It does not mention any cost, latency or determinism beyond the idempotent annotation.

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

Conciseness3/5

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

Three sentences, no filler, and the core computation is front-loaded. However, the parenthetical '(tariff, car, heating, solar, battery)' and the nested clause 'Each of car, heating, solar and battery is something the home has (it explains the bill) or is considering' make it noticeably hard to parse on first read, which works against a tool an agent must interpret quickly.

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?

There is no output schema, so the description bears some burden for describing returns; it gives one sentence on what totals are and that only changes are counted, but not the response shape, per-tariff breakdown, or units. For a 68-parameter, highly interdependent planning tool, the description is adequate but leaves meaningful gaps an agent would want covered.

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 100%, so the 68 parameters are already documented in detail, including defaults, ranges and conditional applicability. The description adds only a marginal framing statement ('Totals are electricity, gas at the price cap and petrol or diesel – only what changes') and does not clarify the cross-parameter dependencies (e.g. consider_ev, consider_heat_pump gating) beyond what the schema already says. Baseline 3 is appropriate.

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

Purpose4/5

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

The description names a specific computation: a home's past year on every tariff in list_tariffs and at the price cap, plus savings from switching, an EV, a heat pump, solar or a battery, applied cumulatively. That is far more than a restated title. It stops short of a 5 because it never contrasts itself with the siblings that overlap it most (plan_home_battery, plan_ev_charging, plan_home_solar-style single-technology planners), so an agent must infer that this is the whole-home, all-measures variant.

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

Usage Guidelines3/5

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

Usage is implied rather than stated: the phrase 'each added to everything before it (tariff, car, heating, solar, battery)' hints at a cumulative whole-home scenario, which suggests using this over the narrower sibling planners. There is no explicit when-to-use, when-not-to-use, or named alternative. An agent can guess the context but is given no routing rule.

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