~/.meridian/meridian.db in read-only mode on each tool call, so the AI always sees up-to-date session data without any manual syncing.
How the MCP server is built
./install.sh builds the MCP server automatically into packages/meridian-mcp/dist/index.js. If you need to rebuild it manually — for example after updating the repository — run:
Add Meridian to your AI tool
- Claude Desktop
- Claude Code
- Cursor
Open (or create) the Claude Desktop configuration file:Add the Save the file, then quit and relaunch Claude Desktop. The Meridian tools will appear automatically in the tool picker.
meridian entry inside mcpServers. Replace /path/to/meridian with the absolute path to your cloned repository:Override the database path
By default the MCP server reads~/.meridian/meridian.db. To point it at a different database file, set the MERIDIAN_DB environment variable in your MCP client config:
What you can ask your AI tool
Once connected, the AI has access to the following tools. You don’t need to invoke them by name — just ask naturally and the AI will choose the right one.get-sessions
“What apps did I use today?” / “How long was I in VS Code this morning?”
get-timeline
“Walk me through my day.” / “What was I doing at 3 PM?” / “How many breaks did I take?”
get-stats
“How productive was I today?” / “What app did I spend the most time in?”
get-active-session
“What am I doing right now?” / “What app is currently active?”
get-active-task
“What Jira ticket am I working on right now?” / “What should I log time against?”
get-task-sessions
“What did I do on KAN-108 today?” / “How long have I spent on this ticket?”
get-task-breakdown
“How much time per ticket today?” / “How was my time split across Jira tickets?”
get-recent-sessions
“What did I do in the last 2 hours?” / “What have I been working on since lunch?”
search-sessions
“When did I work on the Stripe integration?” / “Find sessions where I was in a meeting.”
get-apps
“Which apps do I use most overall?” / “When did I last use Slack?”
get-session-detail
Full OCR text and window content for a specific session by ID.
health-check
“Is the Meridian daemon running?” / last sync status and session count.
Troubleshooting
The AI says it can't find Meridian or the database
The AI says it can't find Meridian or the database
Check two things:
- The daemon is running. Run
meridian status— all four services (screenpipe, daemon, jira-updater, ui) should show as running. - The database exists. Run
ls -lh ~/.meridian/meridian.db. If the file is missing, the daemon hasn’t written any sessions yet. Wait for the first 60-second poll cycle to complete.
args path in your MCP config points to the actual dist/index.js file with no typos.Tools appear but return stale data
Tools appear but return stale data
The MCP server loads the database file fresh on every tool call, so data should never be more than 60 seconds old (one daemon poll cycle). If results seem stale, run
meridian logs to confirm the daemon is actively writing new sessions.Node.js version errors on startup
Node.js version errors on startup
The MCP server uses sql.js (pure WebAssembly) instead of native SQLite bindings, so it is compatible with any modern Node.js version. If you see unexpected errors, rebuild the server with
cd packages/meridian-mcp && npm run build and ensure you’re on Node 18 or later.Task-linked tools return no results
Task-linked tools return no results
Tools like
get-task-sessions, get-task-breakdown, and get-active-task require the AI classifier to have linked sessions to tickets. Confirm that CLASSIFICATION_ENABLED=true in ~/.meridian/.env and that at least one Jira, GitHub, or Linear integration is configured. Check meridian doctor for the classifier status.