A blood test tube on a lab report: the health record Claude reads through the connector

Connect Claude to your health record

Last Updated:

Your record from the Health by Dr Brad tool is one file: health-roadmap.json, in your own Dropbox, Google Drive or GitHub folder. This repo ships a small program that hands that file to Claude as a set of named tools. Once it is connected you can say “add my new blood panel” or “what does my plan say about my LDL” and Claude does it, in your file, on your machine.

This guide is for people who have the tool installed on a computer and are comfortable pasting a line into a terminal or editing one settings file. It takes about five minutes.

What Claude gets

A short, fixed list of tools, and nothing else:

Read your record. Everything in the file: profile, measurements, blood tests, medications, supplements, screenings, documents. Claude can ask for one test or one date range instead of the lot.

Compute your plan. The same plan the web tool shows, worked out offline from your file, with the reason and the citations behind every suggestion.

Add a measurement. One core value, such as a weight or an LDL.

Add lab results. A whole panel in one call, up to 50 tests, in the numbers and units your lab printed. A test the catalogue knows is stored in one standard unit, converted for you, so a year of results reads as one series instead of a mixture; a unit it does not recognise for that test is refused rather than guessed at, and a test it does not know keeps the unit it was reported in.

Correct a value. Fix a number that went in wrong.

Change four things about you. Your sex, your birth year, your birth month and your height, because your plan is worked out from those. Nothing else about you is writable.

Report a problem. If a tool refuses something you reasonably expected, ask Claude to report it. The program on your computer holds no key to anything, so it cannot file anything itself. While the project's GitHub is not public, it says it cannot file reports and posts nothing. Otherwise it hands you a prefilled link to a public issue on the project's GitHub, carrying its description of the problem and nothing about you, and nothing is filed until you open that link and press the button. (The hosted connectors, Claude on the web and ChatGPT, do file it themselves. Their guides say so.)

Import lab files. This one is hosted-only, over Dropbox: the local program you run here has no model and no network, so it lists the tool and refuses it, pointing you at the website's upload or the hosted connector instead.

The file stays where it is. Nothing is uploaded, no account is created, no key is needed. The program opens no network connection at all: it reads your file, changes it, and writes it back.

One thing is held back on purpose. If you use email reminders, your record carries a token that manages that schedule on our server. It is stripped out of every read, so it can never end up in a chat transcript.

Before you start

You need three things.

Node.js 20.10 or newer, from nodejs.org. Check with node --version.

This repo on your computer: git clone https://github.com/DrBradStanfield/roadmap.git. Then cd roadmap && npm install.

The path to your record. Your cloud folder has to be synced to disk, so the file is really there. Dropbox puts it at ~/Dropbox/Apps/Health Plan by Dr Brad/health-roadmap.json for a new connection; a connection made before the app was renamed keeps ~/Dropbox/Apps/Health Roadmap by Dr Brad/. Google Drive for desktop mounts My Drive somewhere like ~/Library/CloudStorage/GoogleDrive-you@example.com/My Drive/Health Plan by Dr Brad/health-roadmap.json on a Mac, and the folder has to be set “Available offline” or Drive streams the file instead of storing it. If you have never connected a cloud provider there is no file on disk at all, because the tool is holding your record in your browser. Connect a provider first, or export the file from the app.

Claude Code

One line, run once, from anywhere:

claude mcp add health-roadmap -s user -- npx tsx /path/to/roadmap/tools/mcp-server.ts --file /path/to/health-roadmap.json

Swap in your own two paths. -s user makes it available in every folder you work in; drop it and the connection belongs to the current folder only.

Check it took with claude mcp list. You want to see health-roadmap and a tick. To undo it, claude mcp remove health-roadmap.

Claude Desktop

Open the settings file. On a Mac it is ~/Library/Application Support/Claude/claude_desktop_config.json. On Windows it is %APPDATA%\Claude\claude_desktop_config.json. If it does not exist yet, create it.

Paste this in, with your own two paths in place of the ones shown, and restart Claude Desktop.

{
  "mcpServers": {
    "health-roadmap": {
      "command": "npx",
      "args": [
        "tsx",
        "/path/to/roadmap/tools/mcp-server.ts",
        "--file",
        "/path/to/health-roadmap.json"
      ]
    }
  }
}

If the file already has an mcpServers block, add the health-roadmap entry inside it rather than pasting a second block.

Say this first

“Read my record.”

Claude comes back with what is in the file, and from there you can ask it anything: what your LDL has done over four tests, what the plan says to do about it, what screening you are due. Then try “add today's weight, 81.5 kg”, or paste in a lab report and ask Claude to file it.

What it will refuse

Your record holds one value per test per day. Ask Claude to add a second weight for a day that already has one and the call is refused, by name:

“weight already has a value on 2026-09-01. That day already holds 80.6 in row 5193822b. Nothing was written. To change it, call correct_value with that row id.”

That is the design, not a fault. Two weights for one day and nothing downstream knows which one is you.

A correction is its own step, and it never erases anything. Claude adds a new row with the corrected number and the original date, and marks the old row “entered-in-error”. Both rows stay in the file for good. That is how a hospital record works, and it is why you can always see what you were told and when.

There is no delete tool. Nothing Claude can call removes a row. It also cannot touch your medications, supplements, screenings or documents: those are current state that a second device could overwrite, so for now only clinical values are writable this way.

It can change four things about you: your sex, your birth year, your birth month and your height, because your plan is worked out from those. Unlike a blood test, they are not kept in history: the newest write is the one your record keeps, so the later of two changes made in the same minute is what you end up with. If Claude states what it believes the field holds and has that wrong, the change is refused. The program on your computer does not insist on that statement, because you are watching your own file; the hosted connector does. How the site displays units is not Claude's to change.

Every write copies your record to a backup beside it first, named health-roadmap.json.bak- and the time. The last three are kept. If a write goes wrong, that file is your record from the moment before it.

Two more habits worth keeping. The local writer takes a lock file and merges its edit in if it hits a conflict. A browser tab writing through your cloud provider's own API sits outside that lock. Do not have both open at once. And check what it files, because an AI can misread a lab report the same way a person can.

Claude on the web

Claude in a browser cannot open a file on your computer, and nothing in the sections above changes that. What it can do is connect to a small server we run, which opens your Dropbox or Google Drive folder for the length of one call. Same tools, same rules, no software on your machine.

Worth being plain about the difference. On this route our server unseals the cloud credential Claude holds, opens your folder with it, and holds your record in server memory for as long as that one request takes. It stores none of it and keeps no copy, but it does read it. The setup at the top of this page is the version where that never happens: tools/mcp-server.ts runs on your own computer, against your own file, with nothing of ours in between. If you do not want a server reading your record, use that one.

This works with Dropbox and Google Drive today. On Drive, Google offers no conditional write, so our server checks the file version before and after each save; two writers landing at the same instant can still race.

1. In claude.ai, open Settings, then Connectors, then Add custom connector. Or follow this link, which opens that dialog with the name and the address already in it and waits for you to confirm.

2. Name it Health by Dr Brad, with this address:

https://mcp.drstanfield.com/mcp

3. Press Add, then Connect. Our own page opens and says what the connector does. Press Continue to Dropbox, or Continue to Google Drive, and approve it there.

4. In a chat, open the + menu, switch Health by Dr Brad on, and say “read my record”.

The hosted version is append-only, like this one, with two extra limits: a correction on a row older than 90 days is refused, and Claude has to state the value it believes it is replacing, so a correction written from a stale read changes nothing.

It can also import lab files, two ways. Drop a PDF, a photo of a result sheet or a clinic letter into the conversation and Claude reads it itself, then sends our server only the values it read: the name as printed, the number, the unit, the date. The file never reaches our server; only those values do, in memory for one request, written to your own folder. Our server checks each one against the record's own catalogue, unit table and ranges, and files only what you confirm. This works on Dropbox and Google Drive alike. Or, on a connected Dropbox, ask it to import the lab files in your Dropbox folder (Apps/Health Plan by Dr Brad) and it reads the PDFs, JPEG or PNG images and ZIPs sitting there, five files at a time; those files go through our server to Anthropic's API for extraction. That happens as soon as it reads them, before you confirm anything. We keep none of them. Anthropic's terms say they do not train models on customer content, and their privacy centre says API inputs and outputs are deleted within 30 days unless they need to keep them to enforce their usage policy or comply with the law (their policy). Drop files in that folder and the next time you ask Claude anything about your record it offers them; nothing runs while you are away. Either way nothing is written to your record until you confirm; the candidates wait in a pending file in your own folder for an hour. A value already in your record is held rather than replaced.

You cancel it at dropbox.com/account/connected_apps. That also disconnects this website from the folder, and reconnecting in the tool is one click. The Connector Privacy Notice explains what the connector stores, which is nothing of your record, and how to disconnect.

ChatGPT connects the same way, with one extra step: connect ChatGPT to your health record.

If something goes wrong

Claude Desktop shows no tools: check the paths in the config file are absolute, restart the app fully, and confirm npx tsx --version runs in a terminal.

Claude says it cannot find the record: run ls on the path you configured. A Dropbox or Drive file set to online-only is not on disk, whatever the folder shows.

Anything else, or something that looks wrong in your data: open the chat bubble on any page of this site and ask. (The project's GitHub, where issues usually go, is temporarily not public.)

This page is built from docs/guides/connect-claude-desktop.md, which is not public while the project’s GitHub is not. The published guide is drstanfield.com/blogs/guides/connect-claude.

About Dr Brad Stanfield

Dr Brad Stanfield

Dr Brad Stanfield is a General Practitioner in Auckland, New Zealand, with a strong emphasis on preventative care and patient education. Dr Stanfield is involved in clinical research, having co-authored several papers, and is a Fellow of the Royal New Zealand College of General Practitioners. He also runs a YouTube channel with over 319,000 subscribers, where he shares the latest clinical guidelines and research to promote long-term health.

YouTube LinkedIn
Back to Guides