Skip to content

Vivax

Clinical research leads spend weeks manually identifying care gaps and overprescription patterns in their patient population — querying EHRs, cross-referencing guidelines, validating statistically, packaging intervention

Core trick

A seven-phase agent queries a Neo4j patient graph, validates findings with statistical guardrails, and auto-declines synthetic-data artifacts.

Tags

Description

Clinical research leads spend weeks manually identifying care gaps and overprescription patterns in their patient population — querying EHRs, cross-referencing guidelines, validating statistically, packaging interventions. The Clinical Hypothesis Scout collapses this loop. A 7-phase Claude Opus 4.7 agent runs over a Neo4j graph of 21,582 patients, four medical ontologies (SNOMED, RxNorm, ATC, LOINC), and 458 recommendations extracted from 64 American clinical guidelines. Each surfaced hypothesis must pass three statistical guardrails, survive a self-critique that auto-declines synthetic-data artifacts, and arrive packaged with five live PubMed citations and an operational action plan covering intervention, owner, complexity, and dollar impact. What separates it from a hypothesis generator is the continuous-monitoring layer. The scout fingerprints each clinical pattern and emits NEW alerts when a pattern first appears, STRENGTHENED when its cohort grows by 20% or more across batches — in the demo dataset, a bisphosphonate-overprescription signal grew from 303 to 450 to 587 patients across three consecutive batches, the kind of consolidating pattern a research lead would want paged about. A Next.js dashboard exposes kept and declined queues with reasons, a cohort browser, a streaming NL query interface, and reproducible Cypher for every finding.
Umut-K/GraphDB_for_clinical_records★ 01 forksPythonCreated Apr 23, 2026 · last push Apr 26, 2026

README excerpt

# Clinical Hypothesis Scout

A context-aware Neo4j graph of **21,582 patients** + **64 American clinical guidelines** + **458 recommendations**, with a Claude Opus 4.7 agent that continuously surfaces care gaps and overprescription patterns — anchored to guidelines, validated by statistical guardrails and self-critique, packaged with PubMed citations and an administrator-facing action plan.

Built exclusively with Claude Opus 4.7 (`claude-opus-4-7`) for the Anthropic hackathon.

See [`architecture.md`](architecture.md) for the design, or [`DEMO.md`](DEMO.md) for the 5-minute scripted walkthrough.

---

## What's in the box

**Graph (Neo4j 5)** — ~15M nodes
- **21,482 Synthea synthetic patients** + **100 MIMIC-IV ICU patients** with longitudinal data: 1.27M encounters, 782k conditions, 1.09M medications, 11.9M observations
- **Three ontologies wired in**: SNOMED CT (1,613 concepts + IS_A hierarchy via Ontoserver FHIR), RxNorm (623 ingredients) + ATC (356 pharmacological classes via RxNav REST), LOINC (247 codes)
- **Guideline subgraph**: 64 guidelines, 458 recommendations, each with verbatim source excerpts, confidence rating, and `(target SNOMED) -[RECOMMENDS_CLASS]-> (ATC)` edges into the ontology layer
- **Continuous-scout layer**: `:DiscoverySnapshot` per batch + `:Alert {kind: NEW|STRENGTHENED}` with fingerprint-based cross-batch identity

**Claude-powered agent**
- **Discovery agent** — 7 phases (propose → materialize → stat-check → evidence → critique → explain → persis

Team