Inspiration

Our family shares one cat, and nobody keeps notes. When Mochi threw up for the third time in a week, we couldn’t answer the vet’s basic questions: when, what did it look like, is she eating? The observations were spread across group chats and memory. We wanted a logbook that is as easy to use as saying one sentence out loud.

What it does

Cat Nanny is an Alexa+ add-on (MCP server) for families who share the care of a cat. You say “Mochi just threw up” and Alexa turns it into a structured observation: it asks the follow-up questions a vet would (“Was it food, hairball, or liquid?”), warns when something needs a vet today (blood in vomit, three vomits in 24 hours, not eating for 24 hours), lets you attach a photo from your phone, fixes mistakes (“actually that was Jeremy”), and shows a seven-day summary on the Echo Show for the vet visit. It records; it does not diagnose.

How we built it cat-nanny: a self-hosted MCP server (spec 2025-11-25, Streamable HTTP, MCP Apps) on AWS Lambda + API Gateway, with DynamoDB for records and S3 presigned URLs for photos. Seven tools, each with an output schema, annotations and assistant_guidance telling the assistant what to say next. cat-health-signals: a pure-Python, dependency-free rules package (no I/O, no clock, no LLM) that decides follow-up questions, red flags and patterns. Deterministic, so every rule is unit-tested. Web simulator: since the Alexa+ MCP Toolkit is in private preview, we built an MCP client that behaves like Alexa+ — voice input, Amazon Bedrock for tool selection, spoken replies and MCP Apps views on a simulated Echo Show.

Challenges we ran into No real Alexa+ to connect to, so we had to build a faithful stand-in and trust the spec. Keeping the LLM honest: the schema only accepts details the person actually said, and the rules — not the model — decide what counts as a red flag. Follow-ups must update the same observation, and “not sure” must never be asked again. Moving an observation (with photos) to another cat while keeping an audit trail. Getting photos from a phone to the log without texting or emailing anything.

Accomplishments that we’re proud of A clean split between the conversation (MCP server) and the medical logic (open-source rules package) that any pet app can reuse. 55 tests covering tools, the Lambda handler, DynamoDB/S3 (moto) and the simulator end to end. The whole thing runs locally with no AWS account, and deploys with one make deploy.

What we learned Good tool descriptions and assistant_guidance matter more than prompt engineering: the model behaves when the server tells it exactly what to say next. Deterministic rules are easier to test, explain and get reviewed by a vet than anything generated. Limiting scope to two observation types (vomit, appetite) with strict schemas gave a far better product than ten loose ones.

What’s next for Cat Nanny Connect to real Alexa+ once the MCP Toolkit opens up. More event types with their own questions (litter box, energy, weight, medication). Finish the pattern detection (frequency, meal timing, food changes, weight trend). Have the red-flag rules reviewed by a veterinarian, and share the summary directly with the clinic.

Share this project:

Updates

Submission history