Open Natural Gas: Georgia natural gas rates
Server Details
Compare Georgia natural gas marketers' PSC-filed rates, profiles and rate history since 2019.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 3 tools
Each tool targets a clearly different question shape: cross-marketer ranking/cost comparison, a single marketer by name, and time-series history. The descriptions explicitly route between them (e.g. 'do not use for ranking or comparing several marketers (use compare_rates)'), and the exclusion lists (electricity, Atmos, other states) reinforce the boundaries.
Two tools follow a verb_noun pattern (compare_rates, rate_history) while marketer_profile uses noun_noun, a minor deviation. All names are snake_case, short, and readable, so the pattern is predictable enough to guess at.
Three tools is on the lean side but matches a narrow, read-only rates-data domain where the three natural questions are compare, inspect one, and trend over time. Each tool clearly earns its place, though compare_rates carries a lot of bundled responsibility (ranking plus advertised deals).
The informational lifecycle is well covered: current comparison, per-marketer detail (plans, complaints, ratings, deals), and historical monthly series back to 2019. Minor gaps exist — no direct plan-level lookup or marketer list/search — but these are largely reachable through the existing tools, and enrollment is intentionally out of scope.
Available Tools
3 toolscompare_ratesCompare Georgia gas marketer ratesARead-onlyIdempotentInspect
Use this when someone asks for the cheapest natural gas in Georgia, Georgia natural gas rates this month, to compare Georgia gas marketers, whether to switch gas marketers, what they would pay a year at a given usage (for example, what would I pay at 900 therms), or about current promo codes and advertised deals. Covers residential customers on Atlanta Gas Light's system. Ranks every Georgia natural gas marketer's current plans of one type by estimated annual cost, from the Georgia PSC's monthly filings. Cost = rate x therms + 12 x sign-up service charge + Atlanta Gas Light base charge. Rows the data gate refused to rank are returned unranked with the reason. Also returns current verified advertised deals across all terms, including promo codes, conditions and evidence. Present these separately alongside filed rates; do not call the PSC winner cheapest overall without comparing available advertised annual costs and terms. Read-only; does not enroll anyone. Do not use for electricity, commercial or business gas accounts, Atmos Energy or city/municipal gas systems, PSC-set Regulated Provider rates, other states, or wholesale/Henry Hub prices.
| Name | Required | Description | Default |
|---|---|---|---|
| plan_type | No | fixed = standard 12-month fixed (default), variable, senior, or prepay | fixed |
| therms_per_year | No | Annual gas use in therms, 50 to 5000 (for example 900). Omit to use the PSC's own typical-household assumption (see assumptions in the result). The user's last 12 bills are the best source. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive, but the description adds real value beyond them: the cost formula, the fact that gated rows are returned unranked with a reason, that advertised deals are returned separately with evidence, and that it does not enroll anyone. It stops short of describing ordering guarantees or how the annual estimate is derived beyond the formula.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with when-to-use triggers and then behavior, and nearly every clause carries information (scope, formula, unranked rows, deal caveat). The opening is one long run-on enumeration of intents, which is dense but not wasteful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so the description must carry return semantics — and it does: ranked rows by estimated annual cost, unranked gated rows with reasons, and a separate set of advertised deals with promo codes, conditions and evidence. An agent knows both what it gets and how to present it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both parameters are already documented in the schema. The description reinforces usage ('at 900 therms', 'plans of one type') and explains how therms feeds the cost formula, but adds no format or edge-case detail beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (compare/rank) and resource (Georgia natural gas marketer plans) with an explicit scope: residential Atlanta Gas Light customers, ranked by estimated annual cost from PSC filings. The exhaustive 'do not use for' list (electricity, commercial, Atmos, municipal, Regulated Provider, other states, wholesale) makes it unmistakable against siblings like marketer_profile and rate_history.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Front-loads concrete user intents that select this tool ('cheapest natural gas in Georgia', 'what would I pay at 900 therms', promo codes) and gives explicit exclusions with the domains it must not be used for. It also instructs how to present results relative to advertised deals rather than declaring a PSC winner outright.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
marketer_profileGeorgia gas marketer profileARead-onlyIdempotentInspect
Use this when someone asks about one Georgia natural gas marketer by name: its reviews or Google rating, PSC complaints, current plans and rates, contract terms such as term length and early termination fee, or its promo codes and advertised deals (for example, is this gas marketer any good, or how many complaints does it have). Returns current filed plans and verified advertised deals with promo codes, conditions and evidence, PSC complaint counts (24 months) and Google rating for one Georgia natural gas marketer, by name. Counts are shown as published; they are not scored or combined. Report the facts and let the user decide: do not give an overall verdict, grade or recommendation about the marketer, and do not treat rank or price as a measure of quality. Do not use for ranking or comparing several marketers (use compare_rates), electricity providers, Atlanta Gas Light itself (the delivery company, not a marketer), Atmos Energy or city/municipal gas systems, or companies outside Georgia.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Marketer name as it appears in compare_rates results; partial names are matched, and an ambiguous or unknown name returns the list of valid choices |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive, and the description goes well beyond them: it specifies the return contents (filed plans, verified deals with promo codes and evidence, 24-month complaint counts, Google rating), states counts are 'as published; not scored or combined,' and imposes an output policy (no verdict, grade, or recommendation; rank/price are not quality measures). That is substantive behavioral context an agent cannot get from the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the trigger and the return payload before the policy and exclusion clauses, and the example queries earn their place by anchoring real user phrasing. It is dense and slightly overlong (the parenthetical examples and the anti-verdict policy could be tightened), but no sentence is filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the return-value burden and does so fully: it enumerates the plan/deal/complaint/rating payload, notes the 24-month complaint window, and flags the evidence attached to deals. An agent has everything needed to call it and to interpret the response.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single parameter already documents partial matching and the ambiguous/unknown-name fallback, so the schema carries the load. The description only reinforces 'by name' and the single-marketer scope; it adds no matching syntax or format detail beyond the schema. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a specific resource (one Georgia natural gas marketer) and enumerates exactly what it covers: reviews/Google rating, PSC complaints, plans and rates, contract terms, promo codes. It explicitly separates itself from compare_rates for multi-marketer comparison, so an agent can route correctly without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives an explicit trigger ('when someone asks about one Georgia natural gas marketer by name'), concrete example queries, and a hard exclusion list: multi-marketer ranking (use compare_rates), electricity providers, Atlanta Gas Light, Atmos Energy, municipal systems, and non-Georgia companies. When-to-use, when-not-to-use, and the alternative are all stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rate_historyGeorgia gas rate historyARead-onlyIdempotentInspect
Use this when someone asks how Georgia natural gas rates have changed over time, whether gas prices in Georgia are going up or down, what gas cost last winter or in a past year, or how one marketer's price has moved. Returns month-by-month cheapest and median estimated annual cost for one plan type (fixed = standard 12-month) across the PSC filings Open Natural Gas has published since January 2019, optionally for one marketer. Months that were withheld by the data gate are listed, not skipped silently. Do not use for this month's prices or ranking (use compare_rates), forecasts of future rates, electricity, Atmos Energy or city/municipal gas systems, other states, or wholesale/Henry Hub prices.
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | Last month, YYYY-MM (for example 2026-10); omit to end at the latest published month | |
| from | No | First month, YYYY-MM (for example 2025-01); omit to start at the earliest published month, 2019-01 | |
| marketer | No | Limit to one marketer, by name as it appears in compare_rates results (partial names match); omit for the whole market | |
| plan_type | No | fixed = standard 12-month fixed (default), variable, senior, or prepay | fixed |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare a safe read-only, idempotent operation, so the description is free to add the traits that actually matter: the data source (PSC filings), the temporal boundary (since January 2019), the return shape (month-by-month cheapest and median estimated annual cost), and the caveat that gate-withheld months are listed rather than silently skipped. That data-quality disclosure is exactly the kind of context an agent cannot get from annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, both front-loaded: the usage triggers lead, the return/data-caveat clause follows, and the exclusions close. Despite its length every clause carries actionable information (sibling routing, data provenance, withholding behavior, out-of-scope queries) with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description still tells the agent what comes back (month-by-month cheapest and median estimated annual cost, across a stated date range) and warns about gaps in the series. Combined with the explicit scope boundaries, an agent has everything needed to call it correctly or to route elsewhere.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3 and the schema already documents formats and the four-value enum. The description adds marginal meaning on top, clarifying that results are for a single plan type at a time and giving the semantic gloss "fixed = standard 12-month", plus noting the marketer filter is optional.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Opens with a concrete verb and resource ("how Georgia natural gas rates have changed over time") and enumerates the user questions it answers, including per-marketer price movement. It explicitly contrasts with compare_rates for current prices, so an agent can separate it from its sibling without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides both a positive routing clause ("Use this when someone asks...") with four concrete triggers and an explicit negative list: current-month pricing/ranking -> compare_rates, forecasts, electricity, Atmos/city systems, other states, wholesale/Henry Hub. This is the strongest form of when/when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
- First observed
compare_rates - First observed
marketer_profile - First observed
rate_history
Related MCP Connectors
Georgia's Code, bills, Supreme Court opinions, and 2026 House and Senate meetings. Independent.
Georgia's published auto insurance averages. Not a quote; we are not licensed here yet.
Georgia K-12 standards, Milestones blueprints, and achievement levels for educators. Independent.
Real annual cost for every Texas electricity plan, from each retailer's Electricity Facts Label.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables users to look up US residential electricity utilities and plans by ZIP code and usage, then estimate annual bills and rank plans by cost from published tariff data.MIT
- FlicenseNot gradedqualityBmaintenanceEnables comparing and ranking portable battery power stations and solar generator bundles by load, runtime, use case, solar charging, portability, battery chemistry, and budget, with modeled estimates and shopping guidance.-

Utilify MCP Serverofficial
FlicenseNot gradedqualityDmaintenanceEnables AI agents to search, compare, and sign up for Texas utility plans (electricity, internet, gas, water, trash) across all ZIP codes, returning ranked options with one-click signup links.-- AlicenseNot gradedqualityBmaintenanceEnables querying Georgia's national electricity system live grid telemetry and regulator statistics, including generation, consumption, cross-border flows, frequency, demand forecasts, tenders, and station-level monthly generation and price data.468 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.