meridian doctor. It runs the full suite of environment health checks — binary presence, plist validity, running processes, database existence, Python venv, and MCP build — and tells you exactly which check failed and what to do about it.
Installation & Setup
install.sh fails at the Homebrew step
install.sh fails at the Homebrew step
- Make sure you have an active internet connection.
- Ensure Xcode Command Line Tools are installed:
./install.sh after the installation completes.Rust build fails
Rust build fails
aarch64-apple-darwin (Apple Silicon) or x86_64-apple-darwin. If rustup is not found at all, install it:./install.sh. The rust-toolchain.toml file in the repo root pins the exact version the project requires, so rustup picks it up automatically.Python venv setup fails
Python venv setup fails
Daemon & Runtime
Daemon exits immediately on startup
Daemon exits immediately on startup
server: MLX model ready (this can take up to 30 seconds on first run while the model downloads).Alternatively, if you do not need session classification, set CLASSIFICATION_ENABLED=false in ~/.meridian/.env and restart:meridian doctor afterwards to confirm everything is healthy.How to check daemon health
How to check daemon health
Sessions are not appearing in the database
Sessions are not appearing in the database
meridian status shows the daemon is running but no sessions appear in ~/.meridian/meridian.db, check the following:- Is screenpipe running?
- Does the screenpipe database exist?
- Is
SCREENPIPE_DBpointing to the right path?
Integrations
Jira: 401 Unauthorized
Jira: 401 Unauthorized
Jira: no Jira tasks are loading
Jira: no Jira tasks are loading
- Check
JIRA_PROJECT_KEYS— if set, ensure the keys match exactly (e.g.KAN, notkan). - Confirm that the projects have open issues in the configured statuses.
- Force a full refresh without restarting the daemon:
GitHub: 401 Unauthorized
GitHub: 401 Unauthorized
Linear: no tasks are loading
Linear: no tasks are loading
- Verify
LINEAR_API_KEYis set correctly in~/.meridian/.env. - Check
LINEAR_TEAM_IDS— if set, confirm the team IDs are correct (visible in Linear’s workspace settings URL). - Ensure the teams have open issues in a status that the connector picks up.
- Check the jira-updater log (which also handles Linear sync) for error messages:
MCP Server
AI tool says Meridian is not found or DB is missing
AI tool says Meridian is not found or DB is missing
~/.meridian/meridian.db.- Confirm the daemon is running and has processed at least one poll tick:
- Check that the database exists:
- If you edited the MCP config file (
~/Library/Application Support/Claude/claude_desktop_config.json), verify that the path inargspoints to the actual repo location:
~ is not expanded by all MCP hosts.MCP server build fails
MCP server build fails
packages/meridian-mcp/dist/index.js is missing or stale, rebuild it:macOS Permissions
screenpipe is not recording — no frames in the database
screenpipe is not recording — no frames in the database
meridian-a11y-helper) and waits for you to confirm each one. After granting access, restart the stack:No audio transcription in sessions
No audio transcription in sessions
--disable-audio, so no Microphone permission is requested and no audio is recorded or transcribed. Existing sessions will have an empty audio_snippets array, which is expected.An Electron app (Slack, Claude Desktop, VS Code, Cursor, …) is missing from sessions
An Electron app (Slack, Claude Desktop, VS Code, Cursor, …) is missing from sessions
com.meridiona.a11y-helper agent, which enables the accessibility tree on each Electron app as it comes into focus. If sessions for these apps are missing, the helper is most likely not running or not trusted:-
Confirm it’s running and trusted:
-
If the doctor check reports the helper is not trusted, re-run the permissions walkthrough and add the
meridian-a11y-helperbinary in the Accessibility pane (it’s a separate entry from screenpipe): -
Restart the stack so the helper picks up the new grant and screenpipe re-attaches to the now-enabled apps:
Dashboard
http://localhost:3939 is not loading
http://localhost:3939 is not loading
- Check whether the UI service is running:
- If it is not running, check the logs:
- If the UI has not been built yet (e.g. after a fresh clone or
--no-uiinstall), build it:
- Then bring the service back up:
meridian doctor is always the best first step for any issue. It checks every dependency and running service in one command and tells you exactly what needs fixing.