Identity evidence
Link addresses to the same person.
msgvault groups identities using explicit links in the archive. Matching display names alone do not merge two people.
Open source. Runs on your hardware.
Save email, chats, meetings, calendars, and contacts on your own computer or server. Search across accounts, look up a person's history, and work from a browser, terminal, or AI assistant.
curl -fsSL https://msgvault.io/install.sh | bash
brew install msgvault
irm https://msgvault.io/install.ps1 | iex
Installers fetch the latest release and verify its SHA-256 checksum. Also on conda-forge, or build from source.
01 / Record
Bring history from several providers into one searchable archive. Sync connected accounts or import local exports. Keep original message data and downloaded attachments alongside the records you browse.
02 / People
Connect the addresses, handles, and phone numbers that belong to one person. Keep information found in the archive separate from the profile details you choose to save.
Identity evidence
msgvault groups identities using explicit links in the archive. Matching display names alone do not merge two people.
Saved profiles
Save a profile to keep names, notes, and contact details when linked identities change. Review profile history, merge duplicates, and reverse supported merges.
Profile history
Maintain organizations, employment, relationships, and custom fields. Inspect the evidence behind a fact and pin a correction so automated updates keep your choice.
Activity
See when you exchanged messages or shared events and meetings. Activity calendars and relationship scores help you find frequent contacts and people you have not heard from recently.
03 / Browser
Use the grouped sidebar to browse messages, files, and people. Press / to search from any page. Save the current view from Everything or Files, or share its URL with someone who has access to your archive. Use Back and Forward to return to earlier views.
Directory and Operations
Maintain profiles, review identities and merges, publish contacts through CardDAV, and catch up with a saved conversation brief in Directory. Check syncs and background jobs in Operations. Update provider credentials in Settings, which shows changes that take effect after a restart. Explore the workspaces.
04 / Search
Keyword search reads your archive offline. Optional search by meaning sends message and query text to the embedding service you configure, which can run locally. Document, image, and profile processing have separate settings and consent steps.
Hybrid search
Search with familiar filters such as sender, subject, and date. Use semantic search to find related meanings, or hybrid search to combine words and meaning. Ranking details explain each result.
Search models
An embedding service turns text into numbers used to compare meaning. Choose a supported local or hosted service and select which accounts to index.
Attachments
Find text inside supported attachments or search images by their content. The embedded Docbank engine manages this processing. Review provider access and approve uploads before sending attachment content.
Agents
An MCP server exposes search, people, files, and analytics tools to Claude Desktop and other agents; bundled agent skills install into Claude Code and Codex. Allowing an agent to edit profiles requires explicit flags.
05 / Interfaces
One background service, the daemon, coordinates archive access and scheduled work. Use the browser, terminal, scripts, or an assistant to work with the same archive.
06 / Deletion and backups
Back up your archive and check the messages you intend to remove before deleting from a provider. Review the selection, then run a separate command to move mail to Trash or permanently delete it.
Verify
For Gmail, verification compares message counts and checks a sample of stored messages. It does not prove every message or attachment was captured. Review the items you plan to delete and keep a backup.
Stage
Create a deletion manifest: a saved list of messages to review. You can create it from the CLI, Web UI, TUI, or MCP. Staging does not remove provider messages; execution is a separate CLI command.
Execute
Execution is a separate CLI step with explicit client consent. Gmail and IMAP default to moving messages to Trash; Microsoft Graph mail uses Deleted Items. Permanent deletion requires explicit opt-in. Archived messages and attachments remain available; msgvault records that they were deleted from their source.
Restore
Back up SQLite archives with snapshots of the database and attachments. New snapshots leave earlier ones intact, and you can verify them before restoring. Restoring does not require the original providers. PostgreSQL databases need separate backups.
07 / Your mail tools
Use msgvault alongside your mail client and provider exports. Keep searching your saved history after messages leave the provider.
Mail client
Use a mail client to read, compose, and send mail. msgvault can prepare managed IMAP drafts and Gmail reply drafts for review there; it does not send mail.
Export archive
An export gives you a snapshot in a provider's format. Import supported exports into msgvault to browse and search them alongside other sources.
msgvault
Keep captured history available after it leaves the provider. Sync supported accounts, connect identities, search across sources, and use your own tools.
08 / Start
Read the guide for an overview, or go straight to setup. The docs cover commands, configuration, and how msgvault stores your data.