exascale.build

Agent-first, source-cited US power data — operating, planned & retired generation capacity (EIA-860M), net generation (EIA-923), and capacity factor — over…

Community: Submitted by a user or imported; check the owner before granting accessOnlineNo sign-inGlobalFreeRead-only

What it can do

  • List Capabilities V1: List available exascale.build data capabilities for agent discovery before querying.
  • Get Source Evidence V1: Fetch and hash-verify the raw source row behind a returned citation. Pass a citation object inside `params`. Two ready-to-pass shapes come straight from the query tools: each a
  • Describe Power Capacity V1: Describe valid filters, groupings, metrics, detail fields, and citation fields for power.capacity.

What data it sees

Do you need an account

No: the server works without sign-in

Agent-first, source-cited US power data — operating, planned & retired generation capacity (EIA-860M), net generation (EIA-923), and capacity factor — over MCP and REST. Read-only, no auth; every value resolves to its raw source cell with a matching SHA-256, so an agent can verify what it reports instead of trusting it.

How to connect

How to connect exascale.build to Claude

The server address to paste into Claude settings:

https://exascale_build--mcunningham.run.tools

  1. Open Claude (claude.ai or the desktop app).
  2. Go to Settings → Connectors.
  3. Click Add custom connector.
  4. Paste the server address copied below into Remote MCP server URL and click Add.
  5. In a chat, click + → Connectors and switch the new connector on.

Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.

Authorization

After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.

How to connect exascale.build to ChatGPT

The server address to paste into ChatGPT settings:

https://exascale_build--mcunningham.run.tools

  1. Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
  2. Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
  3. Open Settings → Connectors and click Create.
  4. Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
  5. Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
  6. In a new chat open + → Apps/Connectors and enable the connector.

OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.

Authorization

On first use ChatGPT opens the service's sign-in window. Sign in and approve access.

How to connect exascale.build to Cursor

The server address to paste into Cursor settings:

https://exascale_build--mcunningham.run.tools

Fastest: click Open in Cursor below and confirm the prompt.

Manually:

  1. In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
  2. Paste the JSON copied below into ~/.cursor/mcp.json (per project: .cursor/mcp.json in the repo root).
  3. Save the file. The server appears in the MCP list; authorize it there if asked.

Authorization

If the service needs sign-in, an authorize button appears next to the server in the MCP list.

Server tool list (8)

Raw names from tools/list. Only developers need these.

list_capabilities_v1List available exascale.build data capabilities for agent discovery before querying.
get_source_evidence_v1Fetch and hash-verify the raw source row behind a returned citation. Pass a citation object inside `params`. Two ready-to-pass shapes come straight from the query tools: each aggregate row's `citations[ref].verify` object, or a detail record's `citation` (from include_records). Either proves the number with no re-query. The tool verifies the raw workbook SHA-256 before returning source-header row values. Use this when an agent must prove an answer from the underlying source row.
describe_power_capacity_v1Describe valid filters, groupings, metrics, detail fields, and citation fields for power.capacity.
query_power_capacity_v1Query verified U.S. generator-level operating, planned, retired, or canceled power capacity from EIA-860M. Use this for capacity questions by state/jurisdiction, county FIPS, source-reported balancing authority code, fuel, prime mover, technology, status, or year. Pass filters inside the `params` object. Returns JSON aggregates with citations and optional generator-level records when `include_records` is true. Does not determine electricity supplied, generation MWh, real-time dispatch, capacity factor, battery storage throughput/duration, demand/load, prices, queues, data-center load, or transmission deliverability.
describe_power_generation_v1Describe valid filters, groupings, atoms, metrics, detail fields, and citation fields for power.generation.
query_power_generation_v1Query verified U.S. monthly net electricity generation (MWh) from EIA-923. Use this for "how much was generated" questions by state, source-reported balancing authority code, fuel, prime mover, sector, plant, or generator, for a given month. For a fuel total or a fuel mix (e.g. "coal generation", "top fuels"), filter or group by `fuel_group` — it sums the several energy_source_code values a fuel spans (coal alone is 6 codes), so a total is correct-by-construction; use the raw `energy_source_code` only when you want one exact as-reported code, since it splits coal/biomass across sub-codes. Select one `atom`: `by_fuel` (default — the complete plant total) or `by_generator` (generator-level, joinable to EIA-860M); never sum across atoms. Pass filters inside the `params` object. Returns JSON aggregates with citations down to the exact source month-cell. Does not determine installed capacity (MW — use power.capacity), demand/load, wholesale prices, fuel cost, heat rate, capacity factor, or real-time/hourly dispatch.
describe_capacity_factor_v1Describe capacity factor: net generation / (operating nameplate × hours), joined across EIA-860M and EIA-923.
query_capacity_factor_v1Query verified U.S. capacity factor — how hard a fleet actually runs — by joining EIA-860M capacity and EIA-923 generation. capacity_factor = net generation (MWh) / (operating nameplate capacity (MW) × hours in the month), computed over plant×fuel present in BOTH sources, so scope is auto-aligned. Pass a single `data_month` (required); optional `group_by` of `state` and/or `fuel_group`, and `state`/`fuel_group` filters. Returns the capacity factor per group with its generation and capacity, a `coverage` declaration (what share of in-scope capacity/generation matched), and a citation to BOTH the capacity and the generation source row. Basis is nameplate; storage is excluded; the capacity snapshot is matched to the month. Does not determine per-generator capacity factor, a net-summer/winter basis, or months absent from either source.