Skip to main content
Glama

med-list-mcp-server

A local MCP server that keeps your personal medication list organized as plain, readable Markdown — receipt style, not a medical journal. Edit the files by hand or with your editor; every tool keeps them in your repo.

Built by Asdale Dynamics, LLC as a beginner-friendly, local-first tool.

What it does

  • Medication list — store what is on the bottle: name, strength, personal timing preferences ("morning and bedtime"), and pharmacy.

  • Refill estimates — from days supplied and the last refill date, it adds the two numbers (minus a configurable "lead days" window) to estimate when to contact your pharmacy. That is the entire calculation.

  • Pickup reminders — a window list of estimated pickups coming up.

  • Printable weekly sheet — a Markdown grid (Mon–Sun by time-of-day wording) plus a refill-prep table, written to output/ to print and bring to doctor visits.

Related MCP server: simple-mcp-example

What it is NOT (by design)

  • Never medical advice. No clinical guidance of any kind.

  • No drug-interaction checks. It does not have any drug knowledge.

  • No dose calculations. It only copies your text and adds two dates.

  • No network. No API keys, no phones home. Data stays in this folder.

Always have prescribers, pharmacists, and clinical resources handle anything medical. This tool is paperwork help, nothing more.

Files

File

Purpose

data/medications.md

Your readable medication table (committed).

data/settings.md

Refill lead days and default pharmacy.

output/weekly-sheet-*.md

Printable sheets, regenerated per run (not committed).

Print with any Markdown viewer (pandoc data.md -o sheet.pdf, or open in your IDE and use its preview/print button).

Setup

python3 -m venv .venv
.venv/bin/pip install -r requirements.txt

Run (MCP stdio server)

Wire into any MCP host (Claude Code, Codex, Zed, …) with stdio:

{
  "mcpServers": {
    "med-list": {
      "command": ".venv/bin/python",
      "args": ["-m", "med_list_mcp.server"],
      "cwd": "/full/path/to/med-list-mcp-server"
    }
  }
}

Or run manually: .venv/bin/python -m med_list_mcp.server.

Tools

  • get_med_list — show the list.

  • add_medication, update_medication, remove_medication.

  • refill_schedule(lead_days=None) — all estimated pickup dates.

  • pickup_reminders(days_ahead=7) — window list.

  • mark_refilled(name, date_str=None) — record a pickup (today default).

  • set_refill_lead_days(days) — how early to nudge yourself.

  • weekly_sheet() — write + return the printable sheet.

  • sort_daily_timing(name, timing) — preview where a phrase lands on the sheet.

Example

$ # in your MCP client
> add_medication(name="Lisinopril", strength="10 mg", timing="morning",
                 days_supplied=30, last_refill="2026-11-01")
Added Lisinopril to data/medications.md.

> refill_schedule()
Refill ESTIMATES ...: Lisinopril, planned pickup day 2026-11-26, 21 day(s) out ...

> weekly_sheet()
Saved: output/weekly-sheet-2026-11-05.md

Tests

.venv/bin/pytest -v

Covers the refill math (add-days-supplied, lead-window clamping, boundary states), Markdown round-trips, and the weekly sheet layout.

Credits

Part of the beginner-friendly tool collection by Asdale Dynamics, LLC (Dylan Asdale) — see dylanasdale.github.io and The Massive AI Manual.

Licensed MIT — see LICENSE.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    Converts documents, web pages, media, and more to Markdown via an MCP server with tools for conversion, inspection, vault capture, and format listing, all running locally with privacy-first design.
    5
    1
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables managing local Markdown notes by creating, viewing, listing, and searching notes and their contents through MCP tools.
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables local nutrition journaling with markdown storage, including tools for logging meals, managing foods, viewing summaries, and exporting records.
    MIT