Enpass MCP Server

MCP server for Enpass vaults: entries, passwords and TOTP/2FA codes, keychain-backed.

Local serverstdio

What is the Enpass MCP Server?

MCP server for Enpass vaults: entries, passwords and TOTP/2FA codes, keychain-backed.

What the server does

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.

  • Master passwords live in the OS keychain — (macOS Keychain, Windows Credential
  • The vault stays local. — The server reads the encrypted vault.enpassdb file
  • Reads are explicit. — Listing entries never returns passwords. Secrets are only
  • Read-only unless you say otherwise. — Out of the box the server cannot change

Credentials and setup notes

  • Node.js 18 or newer - An Enpass 6 / 7 / 8 vault (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.

More MCP options

Compare MCP servers by category, or browse hosted MCP servers if you prefer an endpoint over a local process.

Maintainer setup documentation.

Recorded tools

Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.

ToolWhat it does
list_vaultsList registered vaults, whether their file exists, whether a password is stored, and whether they are unlocked.
unlock_vaultUnlock a vault using the master password from the OS keychain. Takes only a vault name, never a password.
lock_vaultLock a vault and clear its derived key from memory.
list_itemsList entries (title, username, URL). Never returns passwords. Supports query, category, folder, limit.
get_itemReturn a full entry including all field values (password, TOTP, etc.) and its attachment list.
get_passwordReturn the password and, if present, the current TOTP code of an entry.
get_otpGenerate the current TOTP / 2FA one-time code for an entry, with seconds until it rotates.
list_attachmentsList an entry's file attachments (name, size, MIME).
export_attachmentDecrypt an attachment; writes it to disk and returns the path (or base64 inline for small files).
sync_statusList the vaults that use Enpass folder sync and whether the copy in the sync folder is newer.
create_itemCreate an entry, including custom fields; sensitive values are encrypted the way Enpass does it.
delete_itemDelete an entry, or move it to the trash, leaving the tombstone Enpass uses so the deletion syncs.
sync_pullTake in a newer copy from the sync folder, after backing up the local vault.

How to install the Enpass MCP Server

{
  "mcpServers": {
    "enpass": {
      "command": "enpass-mcp",
      "args": [
        "serve"
      ]
    }
  }
}

From the project documentation. Replace placeholders and example paths before connecting.

Configuration

  • Node.js 18 or newer - An Enpass 6 / 7 / 8 vault (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.

Example prompts to try

  • “Use Enpass to list vaults.”
  • “Use Enpass to unlock vault.”
  • “Use Enpass to lock vault.”

Frequently asked questions

MCP server for Enpass vaults: entries, passwords and TOTP/2FA codes, keychain-backed. Confirm the tools offered by your installed version in the connected client. Tool availability and permissions depend on the server and account configuration.