Inspiration

When a seller ghosts you after a damaged or undelivered order, there's no clear next step ; just confusion about who to actually contact, and in what order. India has a real, defined escalation path for this (seller → the platform's grievance officer → the National Consumer Helpline → a formal Consumer Commission filing), but almost nobody knows it or has the patience to track deadlines across four stages by hand. I wanted a voice agent that just walks you through it.

What it does

EscalAI is a case manager for consumer complaints. Tell it what happened ; product, seller, order ID, amount — and it drafts a complaint letter for the current stage, tracks the real reply-window deadline, and automatically escalates to the next stage if nothing happens in time. It never sends anything on your behalf and isn't legal advice — it only drafts and tracks. A built-in NLU agent handles free-form check-ins while you're waiting ("it's been 8 days," "when will I hear back?") by giving the model real callable tools instead of free-text generation, so it can't invent facts it doesn't actually know.

How we built it

A LangGraph state machine models the four-stage ladder, with each case persisted as its own thread via SqliteSaver so it survives restarts and resumes exactly where it left off. It's exposed as a self-hosted MCP server (Streamable HTTP) — Alexa+'s own developer tools are gated for hackathon participants this cycle, confirmed via the hackathon FAQ, so this plus a web-based simulator (mic input, spoken responses) is the sanctioned stand-in for the voice device. Groq handles natural-language routing and field extraction, with a deterministic regex router as a silent fallback — the whole app runs with zero API keys and zero AWS spend.

Challenges we ran into

Getting the waiting-stage agent right took several rounds: an early version let Groq's general router silently misclassify a bare date as "answering a form field," masking the real agent underneath; a date-math bug double-counted prior clock advances when the same case got a second calendar-date message. Both are detailed, along with several SDK/API surprises (a mid-build Groq model deprecation, an mcp package API rename with no deprecation warning), in my friction log in the repo.

Accomplishments that we're proud of

A genuinely hallucination-resistant NLU agent — any numeric claim it makes is checked against the case's real known facts before it's allowed to reach the user. A fully zero-spend, zero-signup architecture. A case management UI with inline message editing, voice in/out, and clean deletion of a case's entire LangGraph history, not just its index row.

What we learned

That giving an LLM real tools to call is a fundamentally different (and safer) architecture than classifying intents from free text — and that a "demo only" simulated clock still needs the same care around fixed anchors and double-counting as a real one would.

What's next for EscalAI — Consumer Escalation Agent

Real Alexa+ device testing once developer access opens up, and expanding the escalation ladder to cover service complaints, not just product orders.

Built With

Share this project:

Updates

Submission history