Skip to main content
Glama

Escalate Anything

Get the upper hand on any big company when they wrong you.

Big companies count on you giving up. This repo will make your agent hunt them down.

Bill went up? Bag lost? Refund denied? Your agent knows who to contact, what to say, and when to escalate.

companies data verified dossiers PyPI tests MCP license

Website · Guides

Every playbook has its own page, for example United Airlines: delayed bag.

Quick start · How it works · What you can fix · Walkthroughs · Fresh and credible · FAQ

uvx escalate-anything setup


Tell your agent what went wrong. Escalate Anything gives it the company's real playbook: the exact form, phone line and deadline, the evidence to collect, the rules that apply, and the escalation ladder up to the regulator in your state. Your agent keeps a case log, follows up on time, and drafts each message for you to approve.

Every value links to the page it came from, with the date it was checked. A weekly routine re-checks the data, and your installed copy updates itself.

Quick start

Set up your agent

With uv installed, run:

uvx escalate-anything setup

It finds your AI apps (Claude Desktop, Claude Code, Cursor, VS Code, Windsurf, Zed, Gemini CLI, Codex, LM Studio and more), shows the changes, and asks before writing. Each config is backed up first. Restart your app afterward.

Or install with one click: Cursor · VS Code · LM Studio · Goose. Claude Code users can add the plugin, which also includes the skills: claude plugin marketplace add alexgaoth/escalate-anything && claude plugin install escalate-anything@escalate-anything.

Ask your agent

United lost my bag on Friday's ORD→SFO flight. Use Escalate Anything to get me reimbursed.
My internet bill went from $80 to $105. Get it back down.

Use the terminal

uvx escalate-anything playbook comcast-xfinity bill_increase --state CA
uvx escalate-anything playbook united-airlines delayed_baggage --state IL
uvx escalate-anything lookup "spectrum"

No install at all? Browse every company's playbooks on the website: escalate.alexgaoth.com.

Related MCP server: GrappleAI MCP Server

How Escalate Anything works

flowchart LR
  A["You: 'United lost my bag'"] --> B[Your agent]
  B -->|MCP| C(Escalate Anything)
  C --> D["Playbook: forms, phones,<br/>deadlines, evidence"]
  C --> E["Escalation: company → DOT,<br/>FCC, CFPB → your state"]
  C --> F["Context: how this company<br/>really handles complaints"]
  D & E & F --> G["Agent drafts the message<br/>or fills the form"]
  G -->|you approve| H[Company or regulator]

Escalate Anything never sends, submits or pays anything. Your agent drafts; you approve. Case notes stay on your computer.

What you can fix

Area

What you get

Companies

✈️ Travel

Refunds, cancellations, lost and delayed bags, damage claims, DOT complaints

United, American, Delta, Southwest, Marriott, Airbnb, Expedia, Hertz

🚢 Cruises & 🎟️ tickets

Cancelled events and sailings, fees, refunds, FMC and FTC complaints

Carnival, Royal Caribbean, Norwegian, Ticketmaster, StubHub, SeatGeek

📱 Phone, internet, TV

Bill increases, retention offers, cancellation, equipment returns, FCC complaints

AT&T, Verizon, T-Mobile, Xfinity, Spectrum, Optimum, DIRECTV, Starlink

🏦 Money

Card and transfer disputes, fraud, frozen accounts, buy-now-pay-later, credit report errors

Chase, Bank of America, Wells Fargo, Capital One, Chime, SoFi, PayPal, Affirm, Equifax

📈 Investing & crypto

Blocked transfers and withdrawals, account takeovers, FINRA and SEC complaints

Robinhood, Fidelity, Schwab, Vanguard, Coinbase, Kraken

📨 Debt collectors

Validation notices, disputes in writing, credit report fixes

Portfolio Recovery, Midland Credit, LVNV, Jefferson Capital

⚡ Utilities

High bills, meter tests, shutoff protection, payment plans, outage claims

PG&E, Con Edison, Duke, ComEd, FPL, PPL, FirstEnergy and dozens more

🏠 Home services

Long contracts, early termination fees, cancelling in writing, door-to-door sales

ADT, Vivint, SimpliSafe, Brinks Home, Terminix, Orkin

🩺 Insurance

Claim denials, appeals, external review, surprise medical bills

UnitedHealthcare, Aetna, Cigna, Kaiser, State Farm, GEICO, Progressive

🛒 Shopping & subscriptions

Returns, missing packages, price adjustments, cancellations, free-trial charges, auto-renewals

Amazon, Walmart, Apple, Netflix, SiriusXM, Adobe, Norton, Peloton, Planet Fitness

🏛️ Regulators

The right federal agency and your state's attorney general, utility commission and insurance department

All 50 states and DC

Browse all companies →

Walkthroughs

A delayed United bag

The playbook in the image above, from United's own pages: report within 24 hours (21 days if international), claim expenses within 45 days, use the exact claim form and the Baggage Recovery Center number, and check the automatic bag-fee refund owed after a 12-hour domestic delay under the DOT refund rule. If United doesn't answer, the next rung is a DOT complaint.

An internet bill that jumped $25

The Xfinity playbook checks whether a promotion ended or the 5-Year Price Guarantee was broken, then gives the retention line, the dispute window from the subscriber agreement, and the FCC complaint as the next rung.

Also included, as a side feature: each company's scam warnings (what it says it will never ask for, scams that use its name, where to report them), a scam guide, and scam_check for a quick red-flag read of a suspicious message.

Got a result with Escalate Anything? Share what worked: good cases become tactics for the next person.

Fresh and credible

  • Every value has a source and a date. Every company gets a credibility grade (A, B or C) from how much of its data comes from its own pages or government sites, and from what was only seen in a search snippet or an archive.

  • Agents see it too. Each answer says when the company was last verified and how credible it is.

  • A weekly routine keeps it current. It checks every link, opens a freshness report, and a Claude routine re-verifies stale values and proposes fixes as pull requests. Maintainers review every change.

  • Your copy updates itself once a week (escalate update; ESCALATE_OFFLINE=1 to turn it off).

How it works: docs/maintenance.md.

Contribute

  • A number or link is wrong? Report it. A maintainer labels it, and the routine checks it against the official page and opens the fix.

  • Something worked for you? Share your case.

  • Want a company added? Ask for it, or add the YAML yourself; see CONTRIBUTING.md.

FAQ

Any app that supports MCP: uvx escalate-anything setup configures the supported apps. ChatGPT and claude.ai need a remote URL; run the read-only server with the included Dockerfile. Agents without MCP can read the website's JSON and llms.txt.

No. It gives your agent the facts and the playbook. Your agent drafts messages or fills forms, and you approve each one before it is sent. Escalate Anything never handles passwords or payment details.

The case log and bill history live in ~/.escalate-anything on your computer. Escalate Anything refuses to store full card numbers or SSNs. The weekly data update downloads a public archive from GitHub and sends nothing about you. Your agent's model provider has its own data policy.

Each company shows its last-verified date and credibility grade; every value links to its source. Data changes, so check the source before you rely on a value. See Fresh and credible.

No. Escalate Anything summarizes public pages from companies and government agencies and links to them. Rules have a status (in force, vacated, repealed) so agents don't cite dead ones, but it is not a lawyer.

Not yet. Companies, rules and regulators are US-only. Contributions for other countries are welcome.

Wins

Got a company to fix something? Share a win and see what worked for others. uvx escalate-anything cases <id> --story turns your case log into a write-up without reference numbers or names.

Star history

If Escalate Anything got you a refund or a fix, a star helps the next person find it.

License

Code: MIT. Data in registry/: CC BY 4.0; please credit "Escalate Anything". Not affiliated with any company it lists.

Available Tools

19 tools
bill_checkCheck a bill for increasesA
Read-only

Find bills that went up versus the median of the previous three, and promotions that end soon. Each finding suggests an issue id for get_playbook.

Inputs: company, threshold_pct. Returns: object

bill_recordRecord a billC

Record one bill (total amount due for the period ending period_end, YYYY-MM-DD). promo_end is the date a promotional price ends, if the bill shows it.

Inputs: amount (required), company (required), period_end (required), note, +2 more. Returns: object

case_closeClose a caseB

Close a case. outcome: resolved, partial, failed or abandoned. what_worked: the channel or argument that worked, so later cases can reuse it.

Inputs: case_id (required), outcome (required), what_worked, amount_recovered. Returns: object

case_getGet a caseC
Read-only

A case with its timeline, promises, reference numbers, pending follow-up and the next escalation rung to try.

Inputs: case_id (required). Returns: object

case_listList casesC
Read-only

Cases in the local log. status: open, closed, or null for all.

Inputs: status. Returns: object

case_logLog a contact on a caseB

Record what happened on a case. kind: contact, sent, response, promise, reference, document, escalation or note. rung: the escalation rung this contact used (frontline, retention, written_complaint, executive, regulator, state_agency, payment_dispute, ...). Dates are YYYY-MM-DD. Set follow_up_on to the date to check back if nothing happens.

Inputs: kind (required), text (required), case_id (required), rung, +6 more. Returns: object

case_openOpen a caseB

Start a case in the local log. account_hint is at most the last 4 digits. Never store passwords, full card numbers or SSNs.

Inputs: issue (required), company (required), summary (required), state, +3 more. Returns: object

draft_briefDraft a complaint briefB
Read-only

Everything needed to write the next message on a case: recipient channel, timeline, references, promises, verified facts and rules with sources, and tone rules. rung defaults to the next escalation rung.

Inputs: case_id (required), rung. Returns: object

find_companyFind a companyA
Read-only

Find companies by name, brand or alias (e.g. 'xfinity', 'united', 'chase'). With an empty query, list every company, optionally only one sector.

Inputs: query, sector. Returns: object

find_regulatorsFind regulatorsC
Read-only

Federal regulators and state agencies that take complaints for a sector.

Inputs: sector (required), state. Returns: object

followups_dueList follow-ups dueC
Read-only

Open cases whose follow-up date has come and that had no activity since.

Inputs: on_or_before. Returns: object

get_companyGet company detailsB
Read-only

Full record for one company: every channel, facts, tips, known blockers and playbooks, plus a credibility summary (grade, source tiers, last verified date).

Inputs: company (required). Returns: object

get_contextGet how a company handles complaintsB
Read-only

How a company handles complaints in practice: a cited dossier (what works, traps, complaint statistics, scams that use its name), the guide for its sector, and the general scam guide. Read it before contacting the company.

Inputs: sector, company. Returns: object

get_escalationGet the next escalation stepB
Read-only

The escalation ladder for a company, lowest rung first, with concrete contacts for each rung.

Inputs: company (required), state. Returns: object

get_playbookGet the playbook for an issueB
Read-only

Steps, channels (deep links, phones), evidence, deadlines, verified facts, applicable rules and the escalation ladder for one company and issue. Pass the person's two-letter state code to resolve state agencies. Rule points are limited to this issue; get_rules gives full text.

Inputs: issue (required), company (required), state. Returns: object

get_rulesGet consumer rulesB
Read-only

Laws and regulations for a sector and issue. Rules that were vacated, stayed or withdrawn are listed separately under not_in_force and must not be cited as current law.

Inputs: issue, state, sector. Returns: object

list_issuesList issue typesC
Read-only

Issue ids that a playbook can be built for, optionally only one sector.

Inputs: sector. Returns: object

report_registry_problemReport a wrong contact or factA

Record a wrong or dead URL, phone number or fact in the registry, so a person can fix the data. entity: company, regulator, state or rule id. location: e.g. 'channels.refund-form'.

Inputs: entity (required), problem (required), location. Returns: object

scam_checkCheck a message for scam red flagsB
Read-only

Check a message, email, text or call script for common scam red flags: gift cards, crypto, remote access, one-time codes, pay-to-get-refund, pressure, package fees, unpaid tolls and account verification links. get_context(company) lists what that company says it never asks for.

Inputs: text (required), company. Returns: object

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.1/5.0

    Scored across 19 tools

    Disambiguation4/5

    Most tools have clearly distinct purposes: registry lookup (find_company/get_company), reference knowledge (get_playbook/get_rules/get_escalation/get_context), case lifecycle (case_*), and billing (bill_*). The one real overlap is get_playbook, which already bundles the escalation ladder and channels that get_escalation returns separately, and the playbook/rules split (issue-scoped vs full text) requires reading descriptions carefully. find_company vs get_company is disambiguated well by their descriptions.

    Naming Consistency3/5

    All names are snake_case, but the verb position flips between verb-first (find_company, get_rules, list_issues) and noun-first namespacing (case_open, case_list, bill_check, followups_due, scam_check). The domain prefixes are systematic and readable, yet direct inconsistencies exist, e.g. list_issues vs case_list for the same list verb, and case_get vs get_company for the same get verb.

    Tool Count4/5

    Nineteen tools is on the heavy side of the ideal 3-15 band, but each group (discovery, playbook/rules knowledge, case tracking, bills, scam screening, data-quality feedback) maps to a real step in an escalation workflow. No tool looks like filler, though the knowledge-lookup cluster could be consolidated.

    Completeness4/5

    Coverage is broad and lifecycle-complete for the core loop: find a company, get a playbook, open/log/list/close a case, check follow-ups, draft the next message, and record bills. Gaps are minor but real: no way to edit or delete a case log entry, no bill listing/lookup by case, and find_regulators returns a list with no companion tool to fetch a single regulator's detail.

    Maintenance

    ActivityMaintained
    ResponsivenessLimited data

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables AI-powered consumer dispute resolution by providing tools for secure evidence storage with confidence scoring, autonomous negotiation, formal dispute notice generation, and consumer rights verification under the Consumer Protection Act.
      Apache 2.0
    • A
      license
      A
      quality
      B
      maintenance
      Enables AI agents to investigate synthetic fraud cases by pulling transactions, running deterministic rules evaluations, pivoting across devices, and recording auditable case files with provenance.
      4
      MIT
    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables users to manage consumer complaints through a four-stage escalation ladder, drafting letters, tracking reply-window deadlines, and pausing or resuming cases. Exposes MCP tools for starting cases, logging responses, checking next steps, drafting escalations, simulating days for demos, and reopening stopped cases.
      1
      MIT