Market Scenario Simulator
simulate_scenarioCounterfactual WHAT-IF re-scoring of 300+ DC Hub power markets under YOUR explicit deltas — answers "what happens to the market ranking if conditions change" (only DC Hub holds the underlying components). Params (all optional, pass at least one delta): avg_kwh_cents_pct (power-price % change, e.g. 30), time_to_power_months_delta (months added/removed), queue_wait_months_delta, reserve_margin_pct_delta (points), curtailment_pct_delta (points), market (one slug, e.g. abilene), top_n (default 10, max 25 — ranked by |score change|). Returns per-market baseline vs scenario composite + component breakdown + the EXACT formula/weights in every response (transparent scenario_composite — deliberately NOT the DCPI). Keyless callers get a top-3 preview; any live key (claim_free_key) returns up to 25. Answers "what happens to the ranking if power prices jump 30%", "which markets survive a tighter build rate". Try: simulate_scenario avg_kwh_cents_pct=30 top_n=10. Do NOT use for the present-day ranking (use rank_markets) or trajectory extrapolation (use predict_market_trajectory); this answers explicit hypotheticals.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| top_n | No | Markets to return, ranked by |score delta| (default 10) | |
| market | No | Score ONE market by slug (optional), e.g. abilene — slugs from rank_markets | |
| avg_kwh_cents_pct | No | Power price % change, e.g. 30 for +30% or -20 for -20% | |
| curtailment_pct_delta | No | Percentage POINTS added/removed from curtailment | |
| queue_wait_months_delta | No | Months added/removed from interconnection queue wait | |
| reserve_margin_pct_delta | No | Percentage POINTS added/removed from reserve margin, e.g. -5 | |
| time_to_power_months_delta | No | Months added (+) or removed (-) from time-to-power, e.g. 12 |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| quota | No | Caller quota state (remaining calls, tier). | |
| _entity | No | Payload class (facility|market|iso_grid|queue_results|deal|report|response); branch on it. | |
| citation | No | How to attribute DC Hub: {source, url, license, cite_as, retrieved_at}, or the attribution line as a string. | |
| provenance | No | Source, method, as_of, verification_counts, license, cite_as; quote it when citing. | |
| _front_door | No | First-tool hint: plan_query(intent) returns the ordered plan. | |
| _return_loop | No | Next-session delta call (get_changes). | |
| site_evaluation_handoff | No | Follow-up calls [{tool, parameters, why}] when the payload carries coordinates. |