Inspiration

An insurance or benefits denial is a moment where a busy person must read a dense letter, know their rights, write a persuasive appeal, and — most easily missed — track a hard deadline that silently expires if they don't act. Any one of those steps is where an appeal quietly dies. We built the mechanical helper that keeps that from happening.

What it does

Claims Copilot ingests a denial letter and hands back a review-ready package: a plain-language summary of what was denied and why, concrete grounds for appeal, a draft appeal letter, and a locally-tracked reminder for the appeal deadline. Every artifact is a DRAFT for a human to review and send — it is explicitly not legal or medical advice, and it runs on synthetic data in the demo (no real person's correspondence).

How we built it

A real AWS Strands Agent with 5 custom @tools and a genuine multi-step agent loop (not a one-shot LLM call): parse_denial_letter → identify_appeal_grounds → draft_appeal_letter → schedule_deadline_reminder → list_pending_deadlines. Deadlines persist to a local JSON store so they cannot silently lapse. Model backend is Anthropic Claude by default and swaps to AWS Bedrock via env var with no code change — which also enables the optional AgentCore deploy bonus. Runs on a laptop; no cloud infrastructure required.

Challenges we ran into

Keeping an agent that drafts appeal letters firmly on the right side of "helper, not legal service": every output is prefixed DRAFT — human review required and footed with a not-legal- or-medical-advice notice, and all fixtures and the demo use synthetic data only.

Accomplishments we're proud of

A clean, testable agent loop with a proof test that drives the real strands.Agent with a scripted model and asserts the tools fire in the intended order — pytest -q → 5 passed. The human-impact story is authentic: "a deadline that passes silently costs you" is a lesson we take seriously.

What we learned

Strands makes a legible, tool-first agent loop straightforward to build and, crucially, to test — the tool-use boundary is exactly where a human-facing agent should be auditable.

What's next

Optional AWS Bedrock + AgentCore deployment for a hosted endpoint; more denial-reason taxonomies; an ICS/calendar export for the deadline reminder.

Built With

Share this project:

Updates

Submission history