Your agents shouldn't guess about your life. They should query it.

personal_db is an open-source sync layer that pipes your ๐Ÿ›Œsleep, ๐Ÿ’ฌmessages, ๐Ÿ’ตmoney, ๐Ÿ“ฑscreen time, ๐Ÿ—“calendar, and ๐Ÿ™commits into one local SQLite file โ€” and serves it to Claude Code, Claude Desktop, Cursor, and any MCP agent.

Download for Mac (Apple Silicon)
// what you can ask

Ask questions only your data can answer.

Connect it once, and any agent you use can answer with your real data โ€” across sources that have never been in the same place before.

claude

how did my sleep track against my shipping weeks last quarter?

โบ personal_db ยท query

SELECT w.week, w.avg_sleep_h, c.commits
FROM whoop_weekly w
JOIN github_weekly c USING (week)
ORDER BY w.week;
Claude

Your two biggest shipping weeks (41 and 44 commits) both followed weeks you averaged 7h+ of sleep. The crash weeks tell the same story in reverse โ€” under 6h10m, commits fell by roughly a third.

W1W2W3W4W5W6
avg sleep commits
claude

what did I promise people over iMessage this week?

โบ personal_db ยท query

SELECT contact, text, sent_at
FROM imessage_messages
WHERE is_from_me = 1
  AND sent_at > date('now', '-7 days')
  AND text GLOB '*[Ii]''ll *';
Claude
Sarah โ€” "I'll send you the deck tomorrow" (Tue) ยท not sent yet
Dad โ€” "I'll book the flights this weekend" (Thu)
โœ“ Alex โ€” "I'll review your PR tonight" (Fri) ยท done โœ“
claude

log that I meditated today

โบ personal_db ยท log_event

{ "tracker": "habits", "event": "meditate" }
MEDITATE โ€” HABIT STREAK
12current streak
21longest
148total logs
// not another memory layer

Memory remembers what you said.
Your database knows what you did.

memory layers

Store fragments extracted from past conversations. If it never came up in chat, it doesn't exist. Recall is fuzzy, unstructured, and lives in someone's cloud.

personal_db

Syncs what actually happened โ€” sleep, spend, screen time, messages, commits โ€” whether or not you ever mentioned it. Structured tables, joinable with SQL, in a local file you own.

A memory layer can't tell you how you slept last Tuesday. Your database can โ€” and your agent can join it against everything else.

// what you get

One file on your Mac. Every agent plugged in.

One SQLite file

Everything lands in ~/personal_db/db.sqlite. Yours to query, back up, or take with you.

Native MCP server

Auto-installs into Claude Code, Claude Desktop, and Cursor during setup. Any MCP agent can connect.

26 connectors bundled

Wearables, messages, money, screen time, commits โ€” even browser-only feeds, via a companion Chrome extension. Browse them โ†’

Set-and-forget sync

Syncs itself in the background every 10 minutes. Nothing to schedule, nothing to babysit.

Agents build new connectors

Ask Claude to use the create_tracker prompt โ€” it designs the schema and writes all four files.

Credentials stay home

Your API keys live in one file on your disk. There is no server side. There is no telemetry.

// how it works

Data pipelines move your company's data. This moves yours.

your life
  • wearables
  • apps
  • exports
  • on-device DBs
โ†’
trackers
  • ingest.py
  • every 10 min
โ†’
~/personal_db/db.sqlite
  • one local file
โ†’
MCP
  • local server
โ†’
Claude Code Claude Desktop Cursor OpenClaw

Sources sync themselves on a schedule, the way company data pipelines do โ€” except the warehouse is a file on your Mac and the analyst is your agent.

// connectors

26 connectors. One local database.

Browse the full connector library โ†’
// the app

A real app, when you want eyes on it.

PersonalDB.app wraps your whole database in a real Mac app โ€” apps for attention, finance, and subscriptions; live health for every source; light, dark, and Morandi themes; a discreet mode that blurs sensitive numbers before anyone looks over your shoulder. Agents read over MCP whether or not it's open.

PersonalDB.app dashboard โ€” sidebar of apps and trackers, stat cards for attention, calendar fragmentation, subscriptions, browsing time, and finance.
// privacy

Your sleep. Your messages. Your money.
None of it leaves your machine.

0

cloud services involved

1

SQLite file, owned by you

0

accounts to create

personal_db has no backend, no accounts, and no analytics. Sync runs on your Mac, the database lives in your home directory, and agents access it over local MCP. Delete the folder and it's gone.

// manifesto

Every agent conversation starts from zero.

Memory layers patch that with fragments of past chats. But your life doesn't happen in the chat.

It happens in your sleep, your messages, your money, your hours โ€” and that record belongs in a file you own, not in someone's cloud.

personal_db is exactly that โ€” a database of you, for the agents that work for you.

// install

Two minutes from install to answers.

1 download PersonalDB.app โ€” or install the CLI below
2 pick your sources in Settings
3 ask Claude something only you would know
Terminal recording of the personal_db installer running end to end.