aeso-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| AESO_API_KEY | Yes | Your AESO APIM API subscription key. Obtainable from https://developer-apim.aeso.ca/ |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_market_snapshotA | Returns a cohesive current-state view of the Alberta electricity market including recent pool price, system marginal price, Alberta Internal Load, generation by fuel, net interchange, and operating reserves. Units: prices CAD/MWh, power MW. Timezone: America/Edmonton. |
| get_pool_pricesA | Returns actual AESO hourly Pool Price observations in CAD/MWh for the requested market interval [start, end). Use get_system_marginal_prices for minute-level real-time pricing. Timestamps are America/Edmonton. Maximum range: 366 days. |
| get_system_marginal_pricesA | Returns AESO System Marginal Price (SMP) observations in CAD/MWh with minute-level interval boundaries for [start, end). Prefer get_pool_prices for hourly settlement prices. Timestamps are America/Edmonton. Maximum range: 7 days. |
| get_loadA | Returns Alberta Internal Load (AIL) observations in MW for [start, end). Optionally includes load forecast values when available. Timestamps are America/Edmonton. Maximum range: 90 days. |
| get_generationA | Returns Alberta generation data. Omit start/end for the current fuel-mix snapshot (all fuels, MW). Provide start and end for historical wind and solar hourly generation. Renewable share uses wind + solar + hydro over total generation. |
| get_interchangeA | Returns current Alberta interchange flows by path in MW, including net interchange. Positive/negative path signs follow AESO Current Supply Demand conventions. |
| get_reservesA | Returns current AESO operating reserve indicators in MW, including contingency reserve required/dispatched and fast frequency response volumes when published. |
| get_outagesA | Returns hourly AESO generator outage capacity by technology/fuel for [start, end) (Total Outage MW plus per-fuel components). Timestamps: America/Edmonton. For transmission planned outages use get_approved_transmission_outages or get_long_range_transmission_outages. |
| get_approved_transmission_outagesA | Returns AESO-approved planned transmission outages (approval_status=approved). Omit start/end for the current public publication. Historical start/end select publication windows and are tightly bounded. Distinct from generator outages and from long-range tentative outages. |
| get_long_range_transmission_outagesA | Returns Long Range Significant Transmission Outages covering ~24 months ahead. Entries may be tentative and not AESO-approved (approval_status=tentative). Do not confuse with get_approved_transmission_outages. |
| get_assetsA | Returns AESO market asset registry records with optional filters for asset ID, pool participant, operating status, and asset type. Results may be truncated by the limit parameter. |
| get_monthly_cumulative_net_revenueA | Returns the current AESO Monthly Cumulative Settlement Interval Net Revenue (MCSINR) public report. Includes cumulative CAD vs 1/6 annualized unavoidable costs and whether the secondary offer price limit trigger has been reached. Timestamps: America/Edmonton hour-ending intervals. |
| get_secondary_offer_price_limitA | Returns the current AESO Secondary Offer Price Limit public report: whether the secondary offer cap is in effect and the CAD/MWh limit when posted. A null limit means the cap is not in effect. |
| compare_market_periodsA | Compares aggregate pool-price and load statistics between two America/Edmonton market periods. Returns averages, min/max/median prices, load stats, and deltas. Does not assert causation. |
| find_price_eventsA | Detects sustained high Pool Price events in CAD/MWh over [start, end). Threshold may be an absolute CAD/MWh value or a percentile (default 90th). Returns event boundaries, duration, peak/average price, and load context when available. |
| explain_market_conditionsA | Returns structured evidence for market conditions in a focus window versus a baseline window (default: immediately preceding equal-length window). Includes observed metrics and associated_changes. Does not claim causation; the calling model should produce any natural-language explanation. |
| compare_forecast_to_actualA | Compares Alberta Internal Load forecast versus actual over [start, end) in MW. Returns mean error, MAE, RMSE, MAPE, and paired intervals. Timestamps are America/Edmonton. |
| get_energy_merit_orderA | Returns one historical AESO Energy Merit Order report date as paginated offer blocks. Reports are released with a 60-day delay. Prices are CAD/MWh and volumes are MW; timestamps use America/Edmonton. |
| get_unit_commitmentsA | Returns AESO generating-unit commitment directives for an inclusive date range, paginated and bounded to 31 days. Includes issue, begin, operation-start, and operation-end timestamps in America/Edmonton. |
| get_generation_capacityA | Returns hourly AIES maximum and available generation capability plus operating and mothball outages by fuel class. The inclusive date range is bounded to 31 days; values are MW and output is paginated. |
| get_load_outage_forecastA | Returns AESO hourly load-outage forecast observations in MW for an inclusive, maximum 31-day range. Timestamps use America/Edmonton and output is paginated. |
| get_intertie_capabilityA | Returns hourly import/export ATC, TTC, reliability margins, and gross offers for AESO interties and flowgates. Supports hour-ending bounds and optional versioned reports; date ranges are limited to 100 days and output is paginated. |
| get_intertie_outagesA | Returns outages affecting AESO interties or flowgates for an inclusive date range. Includes affected paths and event boundaries in America/Edmonton; output is paginated. |
| get_metered_volumesA | Returns hourly AESO metered energy in MWh by asset. Filter by up to 20 asset IDs or 20 pool-participant IDs (not both); unfiltered requests are limited to 16 days and all output is paginated. |
| get_operating_reserve_offer_controlA | Returns one historical AESO Operating Reserve Offer Control report date as paginated blocks. Reports are released with a 60-day delay; prices are CAD/MWh, volumes are MW, and timestamps use America/Edmonton. |
| summarize_market_historyA | Returns compact hourly, daily, weekly, or monthly Pool Price statistics and optional Alberta Internal Load statistics for [start, end). Use this before requesting raw series for long periods; summaries are capped at 400 buckets. |
| assess_supply_tightnessA | Combines the current market snapshot with hourly available generation capability and outages. Returns transparent supply-margin arithmetic plus a deterministic tight/watch/comfortable screening signal; it is not an AESO declaration or a causal price explanation. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| daily_market_brief | Prepare a concise, evidence-based Alberta electricity market brief for a market date, using current and historical AESO tools as appropriate. |
| investigate_price_event | Investigate sustained high Alberta Pool Price events with load and market-condition context, while keeping the result observational rather than causal. |
| compare_market_days | Compare two Alberta market days using bounded Pool Price and load statistics, with optional supply and grid context. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| glossary | AESO market terminology used by this server. |
| datasets | Catalog of datasets exposed by AESO MCP. |
| pool_price_methodology | Interpretation notes for Pool Price data. |
| smp_methodology | Interpretation notes for System Marginal Price data. |
| methodology | |
| methodology | |
| methodology | |
| methodology | |
| methodology | |
| methodology | |
| methodology | |
| methodology | |
| methodology | |
| methodology | |
| methodology | |
| methodology | |
| methodology | |
| methodology | |
| methodology | |
| capabilities |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/bchoi-qwe/aeso-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server