MCP server for Enpass vaults: entries, passwords and TOTP/2FA codes, keychain-backed.
If you already use Enpass, the enpass mcp server is the piece that lets your assistant work with it directly. MCP server for Enpass vaults: entries, passwords and TOTP/2FA codes, keychain-backed.
Runs locally over stdio. Your Enpass vault never leaves your machine, and your master password never passes through the model: it is stored in your operating system's keychain and read directly by the server.
The toolset is worth reading before you wire it up, because it tells you what the integration is really for:
list_vaults — List registered vaults, whether their file exists, whether a password is stored, and whether they are unlockedunlock_vault — Unlock a vault using the master password from the OS keychain. Takes only a vault name, never a passwordlock_vault — Lock a vault and clear its derived key from memorylist_items — List entries (title, username, URL). Never returns passwords. Supports query, category, folder, limitget_item — Return a full entry including all field values (password, TOTP, etc.) and its attachment listget_password — Return the password and, if present, the current TOTP code of an entryget_otp — Generate the current TOTP / 2FA one-time code for an entry, with seconds until it rotateslist_attachments — List an entry's file attachments (name, size, MIME)export_attachment — Decrypt an attachment; writes it to disk and returns the path (or base64 inline for small files)sync_status — List the vaults that use Enpass folder sync and whether the copy in the sync folder is newercreate_item — Create an entry, including custom fields; sensitive values are encrypted the way Enpass does itdelete_item — Delete an entry, or move it to the trash, leaving the tombstone Enpass uses so the deletion syncsnpm on npm is all you need. Most clients run it directly, so configuration is a few lines and a restart.
vault.enpassdb, SQLCipher format) - On Linux: a Secret Service provider (GNOME Keyring or KWallet) for password storage Native dependencies (better-sqlite3-multiple-ciphers, @napi-rs/keyring) ship prebuilt binaries for common platforms, so no compiler is required in the normal case.Plenty of developer tooling servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. Enpass's toolset — list_vaults, unlock_vault, lock_vault and 10 more — is a fair guide to whether it matches your workflow. It is maintained by bitterdev; worth a glance at recent repository activity before you build anything load-bearing on it.
We check each listing at SyncDev against the project's documentation before it goes live — if something here drifts out of date, it is a bug worth reporting.
| Tool | What it does |
|---|---|
| list_vaults | List registered vaults, whether their file exists, whether a password is stored, and whether they are unlocked. |
| unlock_vault | Unlock a vault using the master password from the OS keychain. Takes only a vault name, never a password. |
| lock_vault | Lock a vault and clear its derived key from memory. |
| list_items | List entries (title, username, URL). Never returns passwords. Supports query, category, folder, limit. |
| get_item | Return a full entry including all field values (password, TOTP, etc.) and its attachment list. |
| get_password | Return the password and, if present, the current TOTP code of an entry. |
| get_otp | Generate the current TOTP / 2FA one-time code for an entry, with seconds until it rotates. |
| list_attachments | List an entry's file attachments (name, size, MIME). |
| export_attachment | Decrypt an attachment; writes it to disk and returns the path (or base64 inline for small files). |
| sync_status | List the vaults that use Enpass folder sync and whether the copy in the sync folder is newer. |
| create_item | Create an entry, including custom fields; sensitive values are encrypted the way Enpass does it. |
| delete_item | Delete an entry, or move it to the trash, leaving the tombstone Enpass uses so the deletion syncs. |
| sync_pull | Take in a newer copy from the sync folder, after backing up the local vault. |
{
"mcpServers": {
"enpass": {
"command": "npx",
"args": ["-y", "npm"]
}
}
}Add to claude_desktop_config.json, then restart Claude Desktop.
vault.enpassdb, SQLCipher format) - On Linux: a Secret Service provider (GNOME Keyring or KWallet) for password storage Native dependencies (better-sqlite3-multiple-ciphers, @napi-rs/keyring) ship prebuilt binaries for common platforms, so no compiler is required in the normal case.Kill hallucinated APIs — version-accurate, up-to-date library documentation injected straight into context.
Microsoft's official browser automation server — drive a real browser through the accessibility tree, no screenshots needed.
GitHub's official server — repos, issues, pull requests, Actions and code security, straight from your assistant.
Issue tracking at the speed of conversation — Linear's official hosted server with OAuth and zero install.
Local repository surgery — status, diffs, commits, branches and history for any repo on disk.
Timezone sanity for AI — current time anywhere and correct conversions, without the model doing date math.