Inspiration

When we visit a lab or a doctor, they ask us to bring our reports. Many times we forget to collect them, or we forget to show them to the doctor. Sometimes an important finding gets missed, and treatment is delayed. To avoid this, we built an agentic AI that makes sure nothing gets missed.

What it does

This AI helps patients, doctors, and lab staff. If a doctor asks for a pathology report and the patient forgets, the AI keeps track. It highlights what’s important in the report, so the doctor doesn’t miss a critical point. It can also use ML to flag risky values and suggest next steps to the doctor.

How we built it

We used AWS CloudFormation so the whole system can be deployed anytime, anywhere.

Core Runtime

  • Python 3.11 on AWS Lambda
  • boto3 (AWS SDK for Python)

AI / Decision

  • Amazon Bedrock (LLM calls; model ID is a parameter)
  • Bedrock Agent & Agent Alias (tool-using agent)

API & Orchestration

  • Amazon API Gateway (HTTP) for patient webhooks and admin APIs
  • AWS Step Functions for care workflows
  • Amazon EventBridge for schedules and triggers
  • Amazon SQS (+ DLQ) for async jobs and retries

Data & Storage

  • Amazon DynamoDB for memory and approvals (KMS encryption)
  • Amazon S3 for reports and files (SSE-KMS)

Messaging

  • Amazon SES for appointment emails
  • Discord Webhook (secret in AWS Secrets Manager) for approvals/alerts

Security

  • AWS KMS for encryption and signing
  • AWS IAM for fine-grained roles
  • AWS Secrets Manager for keys and webhooks

Observability

  • Amazon CloudWatch Logs & Metrics for Lambda, API Gateway, and Step Functions

DevOps / IaC

  • AWS CloudFormation for full stack provisioning

Challenges we ran into

  • Claude Sonnet token limits: we moved to us-west-2, which fixed it.
  • Discord and SES setup: we read the docs carefully, tested end-to-end, and fixed runtime errors.

Accomplishments we’re proud of

When a lab finishes a report (JSON), the pathologist uploads it in the UI. The AI runs on that report, creates clear findings, and sends them to a human on Discord for approval. After approval, the patient gets an email with an appointment link. Simple, fast, and reliable.

What we learned

  • How to use Bedrock with Claude Sonnet in practice
  • Clean SES integration for real emails

What’s next

  • Add ML models for lab reports, X-rays, and CT scans
  • Improve accuracy, learn from feedback, and reduce false alarms
  • Keep a human in the loop for trust and safety

Built With

Share this project:

Updates

Submission history