Inspiration

Household paperwork costs people money in one way: missed deadlines. A lease notice window that closed. A warranty that ran out three weeks before the dishwasher leaked. A subscription that renewed at full price. A recalled product still in use. Alexa+ can store notes and answer questions about documents, but it does not turn them into dated obligations, join them (this item, this receipt, this warranty, this exclusion), or watch them in the background. So we built Hippo, an Alexa+ app for the paperwork you never read twice.

What it does

  1. Upload to deadline. Drop a lease PDF into the web app. It shows "Give notice by Nov 1" with the quoted clause and the page. You confirm the date, and only then does it become an obligation that can alert.
  2. Coverage by voice. Ask Alexa: "My dishwasher is leaking, am I covered?" The answer says yes, in warranty until a date, but water damage from improper installation is excluded (page 3), and tells you how to file within 30 days. Every answer based on a document cites the document and the page.
  3. Proactive catch. The next question starts with one sentence: "Before that, your car insurance renews in 9 days." A daily job also checks real CPSC and NHTSA recall data against the things you own and builds an email digest.

How we built it

A self-hosted MCP server over stateless Streamable HTTP with nine tools, an OAuth 2.1 server (PKCE S256, resource binding, rotating refresh tokens with family revocation), a React web app for upload and review, and a daily job. Tool handlers make no model calls and no outbound HTTP, so a voice answer is a lookup (p95 under 150 ms measured locally). The hard rules are tested, not just stated: no alert from an unconfirmed date, every extracted field must quote the page it cites or it is dropped, policy and account numbers are masked to the last 4, the household always comes from the token and never from a tool argument, and text inside a document is treated as untrusted data. More than 3,000 automated tests cover this, after three rounds of independent adversarial review. Everything in the repository was built in the hackathon window, including a CDK stack that we synthesized and template tested but never deployed.

Challenges

The Alexa+ developer tools are partner only, so we could not run Hippo on a real Alexa+ client. Our demo is a web page (/ask) that acts as a real MCP client against the same server, with plain React cards drawn from the tool results (not the MCP Apps host bridge). The server is plain MCP and runs on any client. AWS also refused live Bedrock calls on our account: every daily token quota was 0 and not adjustable, and an AWS Support case was still open when we stopped waiting.

Honest limits

The default build reads only the six demo documents. The Bedrock and Textract adapters exist with a call cap and timeouts, but a live document extraction never ran. One real SES digest was sent and one Textract page was read through the AWS CLI (our Textract adapter never ran live). Nothing is deployed; it runs locally. DynamoDB is verified only against DynamoDB Local. Sessions and auth state are in memory.

What we learned

Trust is the product. Confirm before alert, cite the page, mask the numbers. Our product feedback and friction log (22 entries) are in docs/PRODUCT_FEEDBACK.md and docs/FRICTION_LOG.md in the repo.

What's next

Run Hippo on a real Alexa+ device once the tools are open, finish a live extraction, and deploy the CDK stack.

Run it

pnpm install, pnpm dev, pnpm dev:web, then open http://localhost:5173. Steps are in the README and docs/DEMO_SCRIPT.md.

Built With

Share this project:

Updates

Submission history