Back
FitCypherHealthFitnessAI

Introducing FitCypher

A personal health and fitness tracker built into this site — Fitbit-connected, AI-ready, and designed to give you a complete picture of how your body is actually doing.

Alex Laverty · April 29, 2026 · 7 min read

I’ve spent the last few months building a health and fitness tracker into this site called FitCypher. It lives at laverty.io/fitcypher and it’s the most personal piece of software I’ve ever built — designed entirely around how I want to track my own health, with no compromises for a product roadmap or a business model.

Here’s what it does.


The idea

Most health apps are either too simple (just a step counter) or too complex (a spreadsheet dressed up in a subscription). I wanted something in the middle: a single place that pulls in data from my Fitbit, lets me log anything that Fitbit doesn’t track, and shows me long-term trends across every metric that matters. Blood pressure, sleep stages, HRV, VO2 Max, weight, mood, food diary, blood work results — all in one place, all mine.

The data backbone is Fitbit. If you use a Fitbit device, you can connect your account in Settings and sync your activity, sleep, heart rate, HRV, VO2 Max, steps, and calories directly into FitCypher. Everything Fitbit tracks, FitCypher can store and visualise. But Fitbit is just the start — the metrics system lets you log anything on top of it.


Dashboard

The dashboard is your daily summary. It shows today’s key readings at a glance — weight, BMI, resting heart rate, sleep duration, steps, active minutes, HRV — along with a sparkline for each metric so you can see the recent trend without navigating anywhere.

It’s designed to answer one question at a time: how did I do today, and is that better or worse than lately?


Entries

Every data point ever logged lives in the Entries page. Entries are grouped by date, with each day showing a horizontal row of cards — the earliest entry on the left, latest on the right, so you can read a day left to right like a timeline.

Each card shows the metric name, value, the time it was recorded, and a colour-coded source badge (Fitbit, manual, checklist, or exercise). You can delete any entry from here, and filter the view down to a single metric when you want to trace a specific measurement over time.


Heatmap

The Heatmap page gives you a bird’s-eye view of all your metrics across all dates. Each row is a day, each column is a metric, and each cell is colour-coded based on whether the value is good, average, or concerning — green through to red depending on the metric type. It’s the fastest way to spot patterns across a month or more: poor sleep weeks, steps dropping off, HRV dipping consistently.


The Trends page is where the data becomes meaningful. Six chart sections, each focused on a different health domain:

You can toggle a 7-day rolling average across all charts at once, and switch the time window between 7, 30, 90, and 365 days. The charts are built with Chart.js and update immediately when you change the date range.


Stretch and Workout

Two pages built around exercise video sessions. Each pulls from a curated playlist of YouTube videos — the Stretch page for mobility and restorative work, the Workout page for strength and conditioning. The app selects a video at random, plays it inline, and you mark it as complete or skip it. Every session is logged with the video title, duration, and timestamp.

They’re deliberately simple. No programming, no timers, no complexity — just a way to get moving with some guidance and have a record of what you did.


Checklist

The Checklist is a daily habit tracker. Add anything you want to tick off each day — supplements, medications, habits — and check them off as you go. Completion rates are tracked and feed into the export data so you can see how consistent you’ve actually been.

I use it for Vitamin D, Magnesium, Psyllium husk, and a few other daily supplements. One tap to check, and it logs the exact time you did it.


Goals

The Goals page lets you set targets for any metric — a weight goal, a target HRV, a daily step count — and tracks your progress against them over time. Goals are optional and don’t change how other parts of the app work; they’re just a reference point to measure against.


Metrics

The Metrics page is what makes FitCypher more than just a Fitbit wrapper. Any metric Fitbit doesn’t track, you can create here and log manually. Some examples of what I track:

Each metric has a type (number, text, boolean), a unit, and a colour. The quick-entry bar (press / anywhere in the app) lets you log multiple values in one line: 82.4 kg · 8h sleep · 10000 steps.


AI Integration — Claude and the coming MCP server

This is the part I’m most excited about.

FitCypher has a personal API export endpoint. In Settings, you generate a private token, and then you can pull a full structured snapshot of your health data with a single curl command:

curl "https://laverty.io/api/fitcypher/export?token=<your-token>&days=30"

The response is structured JSON that’s designed to be read by an AI — metric summaries with trend direction, period averages, net change, history arrays, checklist completion rates, and exercise session logs. Pipe it straight to Claude and ask for a health review:

curl "https://laverty.io/api/fitcypher/export?token=<your-token>&days=30" \
  | claude "analyse my health data and give me recommendations"

I’ve been using this myself, and a 30-day snapshot gives Claude enough context to give genuinely useful recommendations — flagging HRV crashes, identifying sleep patterns, noting what’s trending in the wrong direction.

The next step is building a proper MCP (Model Context Protocol) server for FitCypher. MCP is Anthropic’s standard for connecting AI models to external tools and data sources. Once the MCP server is live, Claude will be able to query your health data directly in conversation — no curl commands, no copy-pasting. You’ll be able to ask things like “how has my sleep been this month?” or “compare my HRV from last week to this week” and get answers grounded in your actual data.

The goal is to make AI-assisted health review feel as natural as asking a question — with your real numbers, not generic advice.


Getting started

FitCypher is at laverty.io/fitcypher. You’ll need to sign in with a Clerk account — the same sign-in used for the rest of this site.

Once you’re in:

  1. Fill in your profile (height, age, gender) in Settings so BMI and export context are accurate
  2. Connect Fitbit in Settings if you have a device — this pulls in the bulk of your data automatically
  3. Create any custom metrics you want to track manually
  4. Set up your Checklist with daily habits and supplements
  5. Generate an API token in Settings if you want to use the Claude integration

The app is free, entirely self-hosted on Cloudflare, and your data doesn’t go anywhere except your own D1 database. No analytics, no third parties, no ads.

A
Alex Laverty
Writing about AI, Surfing, Tech, and Australia.