@pipeworx/openei-urdb

Connect: https://gateway.pipeworx.io/openei-urdb/mcp · Install: one-click buttons

No MCP client? Skip the connection: POST https://gateway.pipeworx.io/v1/tools/search_packs {"query":"..."} to find a tool below, GET /v1/tools/<name> for its schema, POST the same URL with arguments for the data — see For AI agents.

Tools: 3

NREL’s Utility Rate Database (URDB) — US electricity tariffs: residential, commercial and industrial rate schedules with their energy charges by tier and time-of-use period, demand charges, fixed monthly charges, net-metering treatment and effective dates, keyed to the utility’s EIA id.

Tools

  • urdb_search_rates(address? | latitude+longitude | utility | eia_id, sector?, detail?, approved_only?, limit?, offset?, _apiKey?) — search tariffs.
  • urdb_rate_detail(label, _apiKey?) — the full structure of one tariff, including the 12x24 month-by-hour period schedules a bill calculation needs.
  • urdb_utilities_for_location(address? | latitude+longitude | filter, _apiKey?) — which utilities serve a location, with tariff counts and how many are current.

Auth

The OpenEI API takes an api_key. NREL’s public DEMO_KEY is accepted and returns real rows (verified 2026-09-17), so this pack works with no configuration at a low rate limit — it is not a gated pack.

Callers who exceed the DEMO_KEY limit pass their own free NREL key as _apiKey. Free key: https://developer.nrel.gov/signup/

A platform key would be read from the injected _platformKey argument (PLATFORM_NREL_KEY). It is not declared as platformKeyEnv in the pack manifest and must not be until the secret actually exists: the gateway is at Cloudflare’s 250-text-binding cap, and declaring the flag without the secret would route rate questions to a tool that could only refuse.

Data sources

developer.nrel.gov/api/utility_rates/v3.json was not reachable from our egress on 2026-09-17 (connection failure, not an HTTP error) and is not used.

Traps

Every one of these returns HTTP 200.

  • radius silently zeroes a lat/lon search. lat=37.5202&lon=-122.2758 alone returns PG&E rates; the identical call plus &radius=25 returns nothing. This pack never sends it.
  • Geographic lookup has real coverage holes. Houston returns zero rates by lat/lon and by ZIP 77002 — Texas retail-choice tariffs are largely absent from URDB. That is a coverage gap, not an error, and the tools say so instead of handing back a bare empty array.
  • address is geocoded upstream and works for some ZIPs and not others. When it returns nothing, lat/lon or utility usually works.
  • sector combined with address narrowed several queries to zero.
  • startdate/enddate are UNIX seconds, and URDB keeps superseded tariffs. A rate whose end date has passed is historical; is_active says so, and the tools warn when every result is superseded.

Tools

  • urdb_search_rates — Searches NREL’s Utility Rate Database for US electricity tariffs by location, utility or EIA id, with energy and demand charges.
  • urdb_rate_detail — Get the FULL structure of one US electricity tariff by its URDB label — every energy-charge tier and time-of-use period, the 12x24 month-by-hour period schedules for weekdays and weekends, demand char
  • urdb_utilities_for_location — Find which electric utilities serve a US location, with how many tariffs each has in the NREL rate database, which sectors they cover, and how many of those tariffs are still current. Answers “who is

Tools

  • urdb_rate_detail — Get the FULL structure of one US electricity tariff by its URDB label — every energy-charge tier and time-of-use period, the 12x24 month-by-hour period schedules for weekdays and weekends, demand char
  • urdb_search_rates — Searches NREL's Utility Rate Database for US electricity tariffs by location, utility or EIA id, with energy and demand charges.
  • urdb_utilities_for_location — Find which electric utilities serve a US location, with how many tariffs each has in the NREL rate database, which sectors they cover, and how many of those tariffs are still current. Answers who is t

Regenerated from source · build September 18, 2026