Skip to main content
Glama
azmartone67

DC Hub: Data Center, Power Grid & Energy Intelligence

Energy Prices

get_energy_prices
Read-onlyIdempotent

Retrieves EIA retail electricity rates for a US ISO or state plus the Henry Hub natural gas spot price, so you can compare power costs for data center siting.

Instructions

Use this when the user asks what electricity or natural gas costs for a data center in a US ISO or state ("what does power cost in ERCOT?", "retail rate in Virginia?"); price alone does not rank sites (the cheapest ISO may have no headroom; execute_plan weighs both). Returns EIA RETAIL electricity rates, which are monthly and not live (about 3 months behind; retail_rates.latest_period names the month), for one ISO footprint (the average of its states), one state, or the US: retail_rates {avg_cents_kwh, min_cents_kwh, max_cents_kwh, latest_period, states_covered} in CENTS/kWh, plus avg_rate_kwh, retail_rate_kwh and industrial_rate_kwh in DOLLARS/kWh (by_sector when no sector is given); and natural_gas_usd_mmbtu, the latest Henry Hub daily spot in $/MMBtu, one national benchmark rather than a state or ISO price, with its own natural_gas.period and as_of. Example: "What is the retail power price and gas price in ERCOT?" — get_energy_prices iso=ERCOT. Params: iso (ERCOT, PJM, MISO, CAISO, SPP, NYISO, ISONE) or state (e.g. TX); data_type is accepted but does not change the response. At an anonymous or free-key seat the figures come back null with gated: true; an email-bound key opens them. This tool has no wholesale/LMP price and no grid-status flag.

Input Schema

NameRequiredDescriptionDefault
isoNoISO/RTO grid region (required for ISO pricing): ERCOT, PJM, MISO, CAISO, SPP, NYISO, ISONE
stateNoUS state abbreviation for state-level pricing context, e.g. TX
data_typeNoOptional price type focus, e.g. retail, wholesale, gas

Output Schema

NameRequiredDescriptionDefault
as_ofNo
gatedNo
scopeNo
filterNo
successNo
caller_tierNo
natural_gasNo
avg_rate_kwhNo
retail_ratesNo
retail_rate_kwhNo
industrial_rate_kwhNo
natural_gas_usd_mmbtuNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv2.12.47
    • removedOutput schema / properties / grid_status
      Removed value: -{}
    • addedOutput schema / properties / natural_gas
      Added value: +{}
    • removedOutput schema / properties / wholesale_price_usd_mwh
      Removed value: -{}
  2. Changed35 schema fields changedv2.12.45
    • changedOutput schema / additionalProperties
      Previous value: -{}New value: +true
    • removedOutput schema / description
      Removed value: -"Live energy pricing for one US ISO: retail cents/kWh + wholesale + natural gas context — alongside the DC Hub envelope keys."
    • removedOutput schema / properties / _entity
      Removed value: -{
      -  "description": "Payload class (facility|market|iso_grid|queue_results|deal|report|response); branch on it.",
      -  "type": "string"
      -}
    • removedOutput schema / properties / _front_door
      Removed value: -{
      -  "additionalProperties": {},
      -  "description": "First-tool hint: plan_query(intent) returns the ordered plan.",
      -  "properties": {},
      -  "type": "object"
      -}
    • removedOutput schema / properties / _return_loop
      Removed value: -{
      -  "additionalProperties": {},
      -  "description": "Next-session delta call (get_changes).",
      -  "properties": {},
      -  "type": "object"
      -}
    • removedOutput schema / properties / as_of / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / as_of / description
      Removed value: -"Pricing as-of timestamp"
    • removedOutput schema / properties / avg_rate_kwh / anyOf
      Removed value: -[
      -  {
      -    "anyOf": [
      -      {
      -        "type": "number"
      -      },
      -      {
      -        "type": "string"
      -      }
      -    ]
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / avg_rate_kwh / description
      Removed value: -"Average rate, cents/kWh"
    • removedOutput schema / properties / caller_tier / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / caller_tier / description
      Removed value: -"Tier the response was served at"
    • removedOutput schema / properties / citation
      Removed value: -{
      -  "anyOf": [
      -    {
      -      "additionalProperties": {},
      -      "properties": {},
      -      "type": "object"
      -    },
      -    {
      -      "type": "string"
      -    }
      -  ],
      -  "description": "How to attribute DC Hub: {source, url, license, cite_as, retrieved_at}, or the attribution line as a string."
      -}
    • removedOutput schema / properties / filter / anyOf
      Removed value: -[
      -  {
      -    "additionalProperties": {},
      -    "properties": {
      -      "iso": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "description": "ISO filter echoed back"
      -      },
      -      "sector": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "description": "Sector the rate covers"
      -      },
      -      "state": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "description": "State filter echoed back"
      -      }
      -    },
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / filter / description
      Removed value: -"Echo of the applied filters"
    • removedOutput schema / properties / gated / anyOf
      Removed value: -[
      -  {
      -    "type": "boolean"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / gated / description
      Removed value: -"true when parts of the payload were withheld by tier"
    • removedOutput schema / properties / grid_status / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / grid_status / description
      Removed value: -"Real-time grid status flag (when served)"
    • removedOutput schema / properties / industrial_rate_kwh / anyOf
      Removed value: -[
      -  {
      -    "anyOf": [
      -      {
      -        "type": "number"
      -      },
      -      {
      -        "type": "string"
      -      }
      -    ]
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / industrial_rate_kwh / description
      Removed value: -"Industrial electricity rate, cents/kWh"
    • removedOutput schema / properties / natural_gas_usd_mmbtu / anyOf
      Removed value: -[
      -  {
      -    "anyOf": [
      -      {
      -        "type": "number"
      -      },
      -      {
      -        "type": "string"
      -      }
      -    ]
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / natural_gas_usd_mmbtu / description
      Removed value: -"Henry Hub-referenced natural gas price, USD/MMBtu (when served)"
    • removedOutput schema / properties / provenance
      Removed value: -{
      -  "additionalProperties": {},
      -  "description": "Source, method, as_of, verification_counts, license, cite_as; quote it when citing.",
      -  "properties": {},
      -  "type": "object"
      -}
    • removedOutput schema / properties / quota
      Removed value: -{
      -  "additionalProperties": {},
      -  "description": "Caller quota state (remaining calls, tier).",
      -  "properties": {},
      -  "type": "object"
      -}
    • removedOutput schema / properties / retail_rate_kwh / anyOf
      Removed value: -[
      -  {
      -    "anyOf": [
      -      {
      -        "type": "number"
      -      },
      -      {
      -        "type": "string"
      -      }
      -    ]
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / retail_rate_kwh / description
      Removed value: -"Retail electricity rate, cents/kWh"
    • removedOutput schema / properties / retail_rates / anyOf
      Removed value: -[
      -  {
      -    "additionalProperties": {},
      -    "properties": {
      -      "avg_cents_kwh": {
      -        "anyOf": [
      -          {
      -            "anyOf": [
      -              {
      -                "type": "number"
      -              },
      -              {
      -                "type": "string"
      -              }
      -            ]
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "description": "Average retail, cents/kWh"
      -      },
      -      "latest_period": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "description": "EIA period the rates come from"
      -      },
      -      "max_cents_kwh": {
      -        "anyOf": [
      -          {
      -            "anyOf": [
      -              {
      -                "type": "number"
      -              },
      -              {
      -                "type": "string"
      -              }
      -            ]
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "description": "Maximum, cents/kWh"
      -      },
      -      "min_cents_kwh": {
      -        "anyOf": [
      -          {
      -            "anyOf": [
      -              {
      -                "type": "number"
      -              },
      -              {
      -                "type": "string"
      -              }
      -            ]
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "description": "Minimum, cents/kWh"
      -      },
      -      "states_covered": {
      -        "anyOf": [
      -          {
      -            "anyOf": [
      -              {
      -                "type": "number"
      -              },
      -              {
      -                "type": "string"
      -              }
      -            ]
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "description": "States in the aggregate"
      -      }
      -    },
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / retail_rates / description
      Removed value: -"Retail-rate aggregate block"
    • removedOutput schema / properties / scope / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / scope / description
      Removed value: -"What the figures cover (e.g. the ISO/state scope line)"
    • removedOutput schema / properties / site_evaluation_handoff
      Removed value: -{
      -  "anyOf": [
      -    {
      -      "items": {
      -        "additionalProperties": {},
      -        "properties": {},
      -        "type": "object"
      -      },
      -      "type": "array"
      -    },
      -    {
      -      "additionalProperties": {},
      -      "properties": {},
      -      "type": "object"
      -    }
      -  ],
      -  "description": "Follow-up calls [{tool, parameters, why}] when the payload carries coordinates."
      -}
    • removedOutput schema / properties / success / anyOf
      Removed value: -[
      -  {
      -    "type": "boolean"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / success / description
      Removed value: -"true when the pricing lookup succeeded"
    • removedOutput schema / properties / wholesale_price_usd_mwh / anyOf
      Removed value: -[
      -  {
      -    "anyOf": [
      -      {
      -        "type": "number"
      -      },
      -      {
      -        "type": "string"
      -      }
      -    ]
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / wholesale_price_usd_mwh / description
      Removed value: -"Wholesale / LMP context, USD/MWh (when served)"
  3. Changed7 schema fields changedv2.12.43
    • changedOutput schema / properties / _entity / description
      Previous value: -"Payload class discriminator (e.g. facility|market|iso_grid|queue_results|deal|report|response) — branch on this before parsing the rest."New value: +"Payload class (facility|market|iso_grid|queue_results|deal|report|response); branch on it."
    • changedOutput schema / properties / _front_door / description
      Previous value: -"In-band front-door hint (first workflow-entry tool of a session): call plan_query(intent) first for the ordered multi-step plan."New value: +"First-tool hint: plan_query(intent) returns the ordered plan."
    • changedOutput schema / properties / _return_loop / description
      Previous value: -"Suggested next-session delta call (get_changes since=24h) so you pull only what changed."New value: +"Next-session delta call (get_changes)."
    • changedOutput schema / properties / citation / description
      Previous value: -"Machine-readable citation: how to attribute DC Hub (dchub.cloud) for this payload. Normally an OBJECT {source, url, license, cite_as, retrieved_at}; a bare string is accepted and carries the attribution line itself."New value: +"How to attribute DC Hub: {source, url, license, cite_as, retrieved_at}, or the attribution line as a string."
    • changedOutput schema / properties / provenance / description
      Previous value: -"Collection-level provenance block: {source, method, as_of, verification_counts, cite_url_template, license, cite_as}. Quote the verification level when citing."New value: +"Source, method, as_of, verification_counts, license, cite_as; quote it when citing."
    • changedOutput schema / properties / quota / description
      Previous value: -"Caller quota state (remaining calls, tier) when available."New value: +"Caller quota state (remaining calls, tier)."
    • changedOutput schema / properties / site_evaluation_handoff / description
      Previous value: -"Pre-built follow-up calls (analyze_site / get_water_risk args) when the payload carries coordinates — an array of {tool, parameters, why} entries."New value: +"Follow-up calls [{tool, parameters, why}] when the payload carries coordinates."
  4. Changed2 schema fields changed
    • removedInput schema / $schema
      Removed value: -"http://json-schema.org/draft-07/schema#"
    • removedOutput schema / $schema
      Removed value: -"http://json-schema.org/draft-07/schema#"
  5. Changed5 schema fields changedv2.3.20
    • removedOutput schema / properties / citation / additionalProperties
      Removed value: -{}
    • addedOutput schema / properties / citation / anyOf
      Added value: +[
      +  {
      +    "additionalProperties": {},
      +    "properties": {},
      +    "type": "object"
      +  },
      +  {
      +    "type": "string"
      +  }
      +]
    • changedOutput schema / properties / citation / description
      Previous value: -"Machine-readable citation: how to attribute DC Hub (dchub.cloud) for this payload."New value: +"Machine-readable citation: how to attribute DC Hub (dchub.cloud) for this payload. Normally an OBJECT {source, url, license, cite_as, retrieved_at}; a bare string is accepted and carries the attribution line itself."
    • removedOutput schema / properties / citation / properties
      Removed value: -{}
    • removedOutput schema / properties / citation / type
      Removed value: -"object"
  6. Changed1 schema field changedv2.3.12
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": {},
      +  "description": "Live energy pricing for one US ISO: retail cents/kWh + wholesale + natural gas context — alongside the DC Hub envelope keys.",
      +  "properties": {
      +    "_entity": {
      +      "description": "Payload class discriminator (e.g. facility|market|iso_grid|queue_results|deal|report|response) — branch on this before parsing the rest.",
      +      "type": "string"
      +    },
      +    "_front_door": {
      +      "additionalProperties": {},
      +      "description": "In-band front-door hint (first workflow-entry tool of a session): call plan_query(intent) first for the ordered multi-step plan.",
      +      "properties": {},
      +      "type": "object"
      +    },
      +    "_return_loop": {
      +      "additionalProperties": {},
      +      "description": "Suggested next-session delta call (get_changes since=24h) so you pull only what changed.",
      +      "properties": {},
      +      "type": "object"
      +    },
      +    "as_of": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "Pricing as-of timestamp"
      +    },
      +    "avg_rate_kwh": {
      +      "anyOf": [
      +        {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "string"
      +            }
      +          ]
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "Average rate, cents/kWh"
      +    },
      +    "caller_tier": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "Tier the response was served at"
      +    },
      +    "citation": {
      +      "additionalProperties": {},
      +      "description": "Machine-readable citation: how to attribute DC Hub (dchub.cloud) for this payload.",
      +      "properties": {},
      +      "type": "object"
      +    },
      +    "filter": {
      +      "anyOf": [
      +        {
      +          "additionalProperties": {},
      +          "properties": {
      +            "iso": {
      +              "anyOf": [
      +                {
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "description": "ISO filter echoed back"
      +            },
      +            "sector": {
      +              "anyOf": [
      +                {
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "description": "Sector the rate covers"
      +            },
      +            "state": {
      +              "anyOf": [
      +                {
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "description": "State filter echoed back"
      +            }
      +          },
      +          "type": "object"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "Echo of the applied filters"
      +    },
      +    "gated": {
      +      "anyOf": [
      +        {
      +          "type": "boolean"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "true when parts of the payload were withheld by tier"
      +    },
      +    "grid_status": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "Real-time grid status flag (when served)"
      +    },
      +    "industrial_rate_kwh": {
      +      "anyOf": [
      +        {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "string"
      +            }
      +          ]
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "Industrial electricity rate, cents/kWh"
      +    },
      +    "natural_gas_usd_mmbtu": {
      +      "anyOf": [
      +        {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "string"
      +            }
      +          ]
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "Henry Hub-referenced natural gas price, USD/MMBtu (when served)"
      +    },
      +    "provenance": {
      +      "additionalProperties": {},
      +      "description": "Collection-level provenance block: {source, method, as_of, verification_counts, cite_url_template, license, cite_as}. Quote the verification level when citing.",
      +      "properties": {},
      +      "type": "object"
      +    },
      +    "quota": {
      +      "additionalProperties": {},
      +      "description": "Caller quota state (remaining calls, tier) when available.",
      +      "properties": {},
      +      "type": "object"
      +    },
      +    "retail_rate_kwh": {
      +      "anyOf": [
      +        {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "string"
      +            }
      +          ]
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "Retail electricity rate, cents/kWh"
      +    },
      +    "retail_rates": {
      +      "anyOf": [
      +        {
      +          "additionalProperties": {},
      +          "properties": {
      +            "avg_cents_kwh": {
      +              "anyOf": [
      +                {
      +                  "anyOf": [
      +                    {
      +                      "type": "number"
      +                    },
      +                    {
      +                      "type": "string"
      +                    }
      +                  ]
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "description": "Average retail, cents/kWh"
      +            },
      +            "latest_period": {
      +              "anyOf": [
      +                {
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "description": "EIA period the rates come from"
      +            },
      +            "max_cents_kwh": {
      +              "anyOf": [
      +                {
      +                  "anyOf": [
      +                    {
      +                      "type": "number"
      +                    },
      +                    {
      +                      "type": "string"
      +                    }
      +                  ]
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "description": "Maximum, cents/kWh"
      +            },
      +            "min_cents_kwh": {
      +              "anyOf": [
      +                {
      +                  "anyOf": [
      +                    {
      +                      "type": "number"
      +                    },
      +                    {
      +                      "type": "string"
      +                    }
      +                  ]
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "description": "Minimum, cents/kWh"
      +            },
      +            "states_covered": {
      +              "anyOf": [
      +                {
      +                  "anyOf": [
      +                    {
      +                      "type": "number"
      +                    },
      +                    {
      +                      "type": "string"
      +                    }
      +                  ]
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "description": "States in the aggregate"
      +            }
      +          },
      +          "type": "object"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "Retail-rate aggregate block"
      +    },
      +    "scope": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "What the figures cover (e.g. the ISO/state scope line)"
      +    },
      +    "site_evaluation_handoff": {
      +      "anyOf": [
      +        {
      +          "items": {
      +            "additionalProperties": {},
      +            "properties": {},
      +            "type": "object"
      +          },
      +          "type": "array"
      +        },
      +        {
      +          "additionalProperties": {},
      +          "properties": {},
      +          "type": "object"
      +        }
      +      ],
      +      "description": "Pre-built follow-up calls (analyze_site / get_water_risk args) when the payload carries coordinates — an array of {tool, parameters, why} entries."
      +    },
      +    "success": {
      +      "anyOf": [
      +        {
      +          "type": "boolean"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "true when the pricing lookup succeeded"
      +    },
      +    "wholesale_price_usd_mwh": {
      +      "anyOf": [
      +        {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "string"
      +            }
      +          ]
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "Wholesale / LMP context, USD/MWh (when served)"
      +    }
      +  },
      +  "type": "object"
      +}
  7. Changed3 schema fields changedv2.3.6
    • addedInput schema / properties / data_type / description
      Added value: +"Optional price type focus, e.g. retail, wholesale, gas"
    • addedInput schema / properties / iso / description
      Added value: +"ISO/RTO grid region (required for ISO pricing): ERCOT, PJM, MISO, CAISO, SPP, NYISO, ISONE"
    • addedInput schema / properties / state / description
      Added value: +"US state abbreviation for state-level pricing context, e.g. TX"
  8. First observedv2.1.19

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Goes well past the readOnly/idempotent annotations: it discloses data provenance (EIA), staleness (~3 months behind, latest_period names the month), and an access-tier behavior that would otherwise look like a failure (anonymous/free-key seats return null with gated: true; email-bound key unlocks). That gating note alone is high-value context an agent cannot infer from the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the trigger condition and the disambiguation warning, then details. It is a dense single paragraph with some redundancy, since a large chunk enumerates return fields (avg_cents_kwh, min/max, latest_period) that the existing output schema already declares — but the units note (cents/kWh vs dollars/kWh) justifies much of that.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only pricing tool it covers what an agent needs before calling: units, staleness, geographic granularity, the national-only nature of the gas benchmark, and the gated-access failure mode. Return values are also covered by an output schema, so nothing material is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3; the description earns a bump by explaining that an ISO value is the average of its member states, that omitting both yields a US figure, and — critically — that data_type is accepted but does not change the response, correcting a schema description that lists 'wholesale' as a valid focus the tool cannot actually serve.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource (retrieve EIA retail electricity and Henry Hub gas prices) and scopes it to ISO/state/US geography. It explicitly carves out what it is not — 'no wholesale/LMP price and no grid-status flag' — which separates it from siblings like get_gas_index, get_grid_scoreboard and compare_isos.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Opens with the exact user phrasing that should trigger it ("what does power cost in ERCOT?", "retail rate in Virginia?") and includes a worked invocation example. It also names a boundary condition: price alone does not rank sites, so ranking belongs to execute_plan.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools