MedVault
Do Not Use When
- Do not use for emergencies, diagnosis, prescribing, dose changes, stopping medication, or replacing clinician or pharmacist advice.
- Required context is missing and cannot be reasonably inferred.
- A more specific skill in this repo is a better match.
Trigger When
- User says "medvault", "med vault", "mv add", "mv list", "mv check", "mv scan", "mv schedule", "mv edit", "mv stop", "mv export", "mv help"
- User uploads a photo of a prescription bottle, medication label, supplement label, or pill packaging
- User asks to track medications, prescriptions, vitamins, or supplements
- User asks about drug interactions, medication conflicts, or contraindications
- User asks to create a medication schedule or reminder plan
- User asks "what medications am I taking" or "check my meds"
- User mentions checking if medications are safe together
Intent
MedVault is a structured medication management system that runs inside Claude Code. It tracks a user's full medication and supplement inventory, parses prescription labels from uploaded images, runs interaction analysis against the full inventory, and generates optimized dosing schedules. All data stays local unless the user explicitly requests export.
The skill prioritizes privacy-first design, OCR accuracy with low-confidence confirmation prompts, and safety-first interaction reporting with severity levels and recommended actions.
Response Rule
Every MedVault response must end with the required safety disclaimer. This applies to all commands, all follow up answers, all OCR results, all schedules, all exports, all edit confirmations, and all general medication discussions. The disclaimer must state that MedVault is not medical advice, that the information can be wrong or incomplete, that mistakes can be made in every MedVault feature, and that the user must always check the data with both a licensed doctor and a licensed pharmacist.
Repository Safety Rule
- MedVault data is local only.
- Do not run, suggest, or automate any git or GitHub publishing step for MedVault runtime data, exports, images, logs, or user medication records.
- If the user asks to sync MedVault data, keep it local and offer local export options only.
Workflow
Command Reference
| Command | Action |
|---|---|
mv add | Manual medication entry |
mv scan | Upload image for OCR extraction |
mv list | Show full medication inventory |
mv check | Run interaction analysis on full inventory |
mv schedule | Generate dosing schedule |
mv edit [name] | Edit an existing medication |
mv stop [name] | Mark medication as stopped |
mv history [name] | Show history for a specific medication |
mv search [term] | Search inventory by name or doctor |
mv export | Export inventory as structured JSON or PDF summary |
mv travel [country] | Build a travel medication review with country restrictions and timing guidance |
mv card print | Generate an emergency card in print ready format |
mv delete [name] | Permanently remove a medication |
mv help | Show command reference and example prompts |
Workflow 1: Manual Medication Entry (mv add)
- Prompt the user for: medication name, dosage, frequency, time of day, classification (Rx/OTC/supplement), prescribing doctor (if Rx), pharmacy, expiration date, refills remaining, and any special instructions.
- Allow partial entry. Save what is provided and mark missing fields as unknown.
- After saving, immediately run an interaction check against the existing inventory.
- Output a confirmation card with all parsed fields.
- Output the interaction report.
- Suggest schedule integration if applicable.
Minimum required fields: medication name and dosage.
Workflow 2: Label Image OCR (mv scan)
- User uploads an image of a prescription label, supplement label, handwritten prescription, faxed prescription page, or medication packaging.
- Parse the image for: medication name, brand name, generic name, dosage, strength, frequency, prescribing doctor, pharmacy, Rx number, refill date, expiration date, patient name (note: do not store unless user confirms), and instructions.
- Present extracted fields in a structured confirmation table. Flag any field with low OCR confidence using a
[?]marker. - Ask the user to confirm or correct flagged fields before saving.
- Store the image reference path alongside the record.
- Run interaction check on the full inventory after saving.
- Output interaction report and schedule suggestion.
- If the source is handwritten or faxed and any medication critical field remains uncertain, require explicit user confirmation before any save.
OCR confidence rules:
- High confidence (clean, well-lit label): save all fields, prompt for confirmation of the full block.
- Medium confidence (partial blur or shadow): flag individual uncertain fields with
[?], ask for correction. - Low confidence (heavily damaged, poor angle): present best guess for all fields, ask user to verify each one individually.
- If medication name cannot be parsed with any confidence: ask user to type it manually.
- Handwritten or faxed source: default any uncertain medication name, dosage, or frequency field to medium or low confidence even if the OCR engine offers a stronger guess.
Common OCR corrections to apply:
0vsOin dosage numbersmgmisread asmcgormEq- Drug names with common OCR artifacts (e.g.,
Lisinopri1→Lisinopril) - Expiration formats: normalize
EXP 06/27,Exp: Jun 2027,06-27all to ISO2027-06
Workflow 3: Interaction Analysis (mv check)
- Load the full active medication inventory.
- For each medication pair and each medication-supplement pair, check for known interactions.
- Classify each interaction by severity: Critical, Major, Moderate, Minor, or Informational.
- For each detected interaction output:
- Medication A + Medication B
- Severity level
- Mechanism of interaction (plain language)
- Symptoms to watch for
- Recommended action
- When to contact a doctor
- Food, drink, and supplement interactions relevant to either medication
- Confidence level of the warning
- Check for duplicate active ingredients across generics and brands.
- Check for contraindications based on classification or known drug families.
- Output a summary header: total interactions found, critical count, major count, moderate count.
- End the report with the required safety disclaimer.
Interaction severity definitions:
| Severity | Meaning |
|---|---|
| Critical | Life-threatening risk. Contact doctor or call 911 immediately. |
| Major | Serious risk. Do not take together without physician guidance. |
| Moderate | Clinically significant. Monitor closely. Discuss with pharmacist. |
| Minor | Low risk. Be aware of potential effects. |
| Informational | Not a safety risk. Useful context for timing or absorption. |
Known interaction categories to check:
- Drug-drug: pharmacokinetic (absorption, distribution, metabolism, excretion) and pharmacodynamic (additive, synergistic, antagonistic)
- Drug-food: grapefruit juice (CYP3A4 inhibitor), dairy (tetracyclines), high-fat meals (certain antiretrovirals), tyramine-containing foods (MAOIs), alcohol
- Drug-supplement: St. John's Wort (CYP450 inducer), fish oil (bleeding risk with anticoagulants), magnesium (absorption blocker for many drugs), melatonin (sedative additive), vitamin K (warfarin antagonist), iron (absorption interference), CoQ10 (statin interactions)
- Drug-timing: medications that must be separated by hours due to absorption competition
Workflow 4: Schedule Generation (mv schedule)
- Load the full active medication inventory.
- For each medication, extract frequency and timing requirements.
- Generate a daily schedule organized by time block: Early Morning (before 6am), Morning (6-10am), **Midday (10am-2pm)