Lower My Bill
Server Details
Call scripts to lower bills in the US and UK, low-cost plans you may qualify for, and when to call.
- Status
- Healthy
- Uptime
- 100.0% over 20 days
- Last Tested
- Transport
- Streamable HTTP ยท MCP 2025-11-25
- URL
- Repository
- GoodTurnStudio/goodturn-mcp
- GitHub Stars
- 0
- Server Listing
- goodturn-mcp
TDQS
Scored across 3 tools
The three tools target distinct actions: finding assistance programmes, generating a negotiation script, and creating a calendar reminder. However, get_bill_script and get_call_reminder are tightly coupled (the reminder embeds the full script), which could cause minor confusion about which to call when a deal end date is known.
All three tools follow the same verb_noun pattern with a consistent get_ prefix (get_bill_help, get_bill_script, get_call_reminder). Naming is fully predictable and readable.
Three tools is at the low end but fits a narrow bill-lowering domain where each tool (find help, get script, set reminder) earns its place. It is well-scoped, though slightly lean for anything beyond the core flow.
The surface covers the main lifecycle: discovering assistance programmes, negotiating a bill, and following up before a deal ends. Minor gaps exist (no comparison or tracking of bills), but the stated purpose is largely served and the deliberate no-storage design is documented.
Available Tools
3 toolsget_bill_helpOfficial help programmes for a billARead-onlyIdempotentInspect
Official help programmes for a bill. For requests like "is there help paying my internet bill?", "is there a broadband social tariff?", "help with my energy bill in the UK", "help with my electric bill", "cheap internet for low income", "does Xfinity have a low-income plan?". Returns programmes with who qualifies and how to apply.
| Name | Required | Description | Default |
|---|---|---|---|
| bill | Yes | Bill: internet, mobile, electricity (or heating, gas), water, tv, streaming, car insurance, home insurance, credit card, council tax (UK), or a provider name. Up to 60 characters. | |
| state | No | US state name or two-letter code. For electricity, adds the state's energy discount programme (California, New York, Ohio, New Jersey, Pennsylvania, Georgia). England, Scotland, Wales, Northern Ireland or UK gives the UK answer. | |
| country | No | Two-letter country code. GB (or UK) gives UK schemes (Ofcom social tariffs, Warm Home Discount, WaterSure, Council Tax Reduction). Defaults to the caller's country, else US. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and open-world, so the safety profile is covered. The description adds behaviour the annotations do not: it states the tool returns programmes with eligibility criteria and application steps, which tells the agent what kind of answer to expect from an open-world lookup.
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?
Strongly front-loaded: purpose first, then examples, then return shape. The example list is long but each phrasing targets a distinct query intent an agent may have to match against, so the length is largely earned.
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 three fully documented parameters, rich annotations and no output schema, the description supplies what is missing: what it returns (qualifying criteria and how to apply). Only the ambiguity versus sibling tools leaves a small gap.
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 description coverage is 100%, so bill/state/country are each fully documented with accepted values and defaults; baseline 3 applies. The description's examples reinforce how the 'bill' argument is phrased but add no syntax or constraints beyond the schema.
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?
The title and first sentence name a specific resource ('official help programmes for a bill') and the example phrasings make the retrieval purpose unmistakable. It does not explicitly contrast itself with get_bill_script or get_call_reminder, so it stops short of full sibling differentiation.
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?
The six quoted example queries implicitly define the situations this tool is for (subsidy/social-tariff questions), which is stronger than nothing. However, there is no explicit when-to-use rule and no naming of the sibling tools as alternatives, so routing between the three siblings is left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_bill_scriptA call script to lower a billARead-onlyIdempotentInspect
A call script to lower a bill. For requests like "help me lower my Comcast bill", "get my BT broadband cheaper", "lower my Council Tax", "script to get a better phone plan", "how do I negotiate my car insurance?", "lower my credit card interest", "I pay for too many streaming services". Give the bill type, the provider, or both. If the provider doesn't sell that bill, provider_note says so and the general script is returned.
| Name | Required | Description | Default |
|---|---|---|---|
| bill | No | Bill: internet (or broadband), mobile, tv, streaming, car insurance, home insurance, electricity (or energy, gas), water, credit card, gym or council tax (UK). Up to 60 characters. | |
| state | No | US state name or two-letter code. For electricity, adds the state's energy discount programme where there is one. England, Scotland, Wales, Northern Ireland or UK gives the UK answer. | |
| country | No | Two-letter country code. GB (or UK) gives UK scripts, schemes and complaint routes; otherwise it picks the Amazon store in own_modem (US by default; IE uses amazon.co.uk). Defaults to the caller's country. | |
| provider | No | Company name, for example Comcast, Xfinity, Spectrum, AT&T, Verizon, Frontier, T-Mobile, Cox, Optimum, Mediacom, Astound, DIRECTV, DISH, GEICO, Progressive, State Farm, Allstate, USAA; UK: BT, Sky, Virgin Media, TalkTalk, Vodafone, EE, O2, Three, Plusnet, NOW Broadband, Hyperoptic, British Gas, Octopus, EDF, E.ON Next, OVO, ScottishPower. Up to 60 characters. | |
| deal_ends | No | The date the current promotional price, contract or insurance policy ends, YYYY-MM-DD. Adds call_by (about 30 days earlier, on a weekday, or today if that has passed) and add_to_calendar, a link to a calendar reminder with the script. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and openWorld, so the safety profile is covered. The description adds genuine behavioral context beyond that: when the provider does not sell the specified bill, it discloses that provider_note reports this and a general script is returned instead.
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?
The purpose is front-loaded in the first sentence, followed by a useful but fairly long list of seven example phrasings. The examples earn their place for semantic matching, though the block is verbose relative to the rest.
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 all parameters documented at 100% and annotations covering safety, the description covers inputs and the provider-mismatch fallback. It does not describe the shape of the returned script, but for a read-only generator with no output schema this gap is minor.
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 description coverage is 100%, so the schema already documents all five parameters thoroughly. The description only adds the loose guidance that bill type, provider, or both may be supplied, which is marginal 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?
The description states a specific verb and resource (a call script to lower a bill) and reinforces it with realistic user-request phrasings. It does not, however, differentiate itself from the sibling get_bill_help, so an agent cannot tell the two apart from the text alone.
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?
The example request list ('help me lower my Comcast bill', 'lower my Council Tax', etc.) gives strong concrete context for when to invoke it, and 'Give the bill type, the provider, or both' clarifies input expectations. There are no explicit exclusions or comparisons to the sibling tools, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_call_reminderCalendar reminder to call before a deal endsARead-onlyIdempotentInspect
Calendar reminder to call before a deal ends. Returns a calendar file (.ics) with an all-day event about 30 days before the deal ends, holding the full script, offers to ask for and a confirm-in-writing message, with alerts at 9am the day before and on the day. Nothing is stored. get_bill_script gives this link as add_to_calendar when deal_ends is given.
| Name | Required | Description | Default |
|---|---|---|---|
| bill | No | Bill type, as for get_bill_script. Give bill, provider or both. | |
| country | No | Two-letter country code. GB (or UK) gives the UK script when no provider is named. Defaults to the caller's country, else US. | |
| provider | No | Company name, as for get_bill_script. | |
| deal_ends | Yes | The date the current price or policy ends, YYYY-MM-DD. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes beyond the readOnly/idempotent/non-destructive annotations by disclosing that nothing is stored and detailing the generated artifact: an all-day event ~30 days before deal end, containing the full script, offers and confirm-in-writing message, with alerts at 9am the day before and on the day. This is rich behavioral context an agent could not infer from annotations alone.
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?
Three tight sentences that lead with the purpose and then layer output and cross-tool routing. Efficient, though the opening restates the title verbatim and the second sentence is densely packed.
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 by describing the .ics contents and alert schedule. It stops short of specifying the exact return form (file contents vs. URL), leaving a minor gap for a generation tool.
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 all four parameters are already documented in the schema, including the bill/provider/country fallbacks. The description only reinforces that deal_ends anchors the event timing, adding little beyond the structured data; baseline 3 is appropriate.
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 and concrete output: it produces a calendar file (.ics) for a reminder to call before a deal ends. This is clearly distinguishable from the sibling get_bill_script, which is referenced as the related-but-different tool.
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?
Explains the trigger context (deal_ends must be given) and names the relationship to get_bill_script (which links here as add_to_calendar). It does not spell out when NOT to use it, but the routing condition is clear.
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
- Changed
get_bill_help1 field changed- changed
Input schema / properties / bill / descriptionPrevious value: -"internet, mobile, electricity (or heating, gas), water, tv, streaming, car insurance, home insurance, credit card, council tax (UK), or a provider name. Up to 60 characters."New value: +"Bill: internet, mobile, electricity (or heating, gas), water, tv, streaming, car insurance, home insurance, credit card, council tax (UK), or a provider name. Up to 60 characters."
- Changed
get_bill_script1 field changed- changed
Input schema / properties / bill / descriptionPrevious value: -"internet (or broadband), mobile, tv, streaming, car insurance, home insurance, electricity (or energy, gas), water, credit card, gym or council tax (UK). Up to 60 characters."New value: +"Bill: internet (or broadband), mobile, tv, streaming, car insurance, home insurance, electricity (or energy, gas), water, credit card, gym or council tax (UK). Up to 60 characters."
- Changed
get_call_reminder2 fields changed- changed
Input schema / properties / bill / descriptionPrevious value: -"Bill type, as for getBillScript. Give bill, provider or both."New value: +"Bill type, as for get_bill_script. Give bill, provider or both." - changed
Input schema / properties / provider / descriptionPrevious value: -"Company name, as for getBillScript."New value: +"Company name, as for get_bill_script."
3 tool updates
- First observed
get_bill_help - First observed
get_bill_script - First observed
get_call_reminder
Related MCP Connectors
Audit junk fees, project annual costs and draft dispute letters. Free.
Cancel or cut any subscription: exit steps, cheaper plans, alternatives and the cheapest stack.
Is your US medical bill fair? Compares charges with Medicare rates and drafts a dispute letter.
Search U.S. cell plans, compare supported costs, find wireless news, and get switching guidance.
Related MCP Servers
- FlicenseNot gradedqualityBmaintenanceEnables users to audit monthly broadband and mobile bills, detect out-of-contract price creep and hidden junk fees, and generate high-leverage churn-threat retention scripts.7-
- FlicenseNot gradedqualityBmaintenanceEnables auditing monthly broadband and mobile bills, detecting out-of-contract price creep and hidden junk fees, and synthesizing high-leverage churn-threat retention negotiation scripts through an MCP-compliant JSON-RPC interface.7-
- 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

genpark-personal-agentofficial
FlicenseNot gradedqualityBmaintenanceEnables users to audit recurring bank/card subscription charges, detect sneaky fee increases or expired-trial conversions, calculate annualized budget leakage, and generate retention negotiation dispute letters.7-
Glama MCP Gateway
Add one secure layer between your agents and this server.