oegb-kraken-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| OCTOPUS_API_KEY | No | Your personal Octopus Energy API key (found under Personal details → API access). Needed for account and consumption data (get_account, get_consumption); the product and price tools work without it. | |
| OCTOPUS_API_BASE_URL | No | Optional override for the API base URL (default https://api.oegb-kraken.energy/v1). |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
Read-only access to the Octopus Energy (Kraken) REST API. Products and tariff rates are public. Account and consumption data need the user's OCTOPUS_API_KEY. Typical flow: get_account gives the meter IDs and tariff codes, then call get_consumption and get_tariff_rates. Use ISO 8601 datetimes with Z.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_productsA | List Octopus Energy products (tariff families such as Agile, Go, Flexible). Public, no API key needed. Returns product codes to use with get_product. |
| get_productA | Get one product and its tariffs by product code (e.g. AGILE-FLEX-22-11-25). Public. The response lists tariff codes per region (single_register_electricity_tariffs, dual_register_electricity_tariffs, single_register_gas_tariffs), keyed by GSP region like _A ... _P. Use those tariff codes with get_tariff_rates. |
| get_tariff_ratesA | Get unit rates or standing charges for a tariff, e.g. half-hourly Agile prices. Public. Prices are in pence, with value_exc_vat and value_inc_vat. Use day-unit-rates / night-unit-rates only for Economy 7 (E-2R-...) tariffs. Results are newest first. Narrow with period_from / period_to. |
| get_accountA | Get an Octopus Energy account by account number (e.g. A-1234ABCD). Needs OCTOPUS_API_KEY. Returns properties with electricity meter points (MPAN, meter serial numbers) and gas meter points (MPRN, serials), plus tariff agreements (tariff_code, valid_from/valid_to). Use these with get_consumption and get_tariff_rates. |
| get_consumptionA | Get smart-meter consumption for an electricity meter (MPAN + serial) or gas meter (MPRN + serial). Needs OCTOPUS_API_KEY. Half-hourly by default. Electricity is in kWh. Gas is in kWh for SMETS1 and m³ for SMETS2. Use group_by to aggregate, and order_by=period for oldest first (default is newest first). Get the identifiers from get_account. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 5 tools
Each tool targets a distinct resource/action: product listing, product lookup, tariff rates, consumption, and account lookup. The descriptions explicitly cross-reference which tool feeds which (e.g. product codes to get_product, tariff codes to get_tariff_rates), leaving no meaningful overlap. An agent can select the right tool from the name alone.
All names follow a clean snake_case verb_noun pattern: list_products, get_product, get_consumption, get_tariff_rates, get_account. The lone 'list' prefix is semantically appropriate for a collection endpoint, not an inconsistency.
Five tools is well-scoped for a read-only Octopus Energy API surface: discovery, product detail, rates, account, and consumption. No tool feels redundant or extraneous, and nothing essential is obviously missing at this scope.
The lifecycle for reading products, tariffs, accounts, and consumption is covered with clear chaining via identifiers. Minor gaps exist: no standalone get_tariff metadata tool, no account listing/search to discover account numbers, and no meter-point lookup—though these are workaroundable and likely outside the intended read-only scope.