Skip to main content
Glama
@aiwerk/mcp-server-vault

@aiwerk/mcp-server-vault

by AIWerk

@aiwerk/mcp-server-vault

Bitwarden / Vaultwarden MCP server — BYOK vault access for AI agents.

WARNING

Security: do not use 0.2.2 or earlier. Those versions returned item notes through list_vault_items (first 80 characters) and get_vault_metadata (full notes) for secure notes and login items. On a secure note the notes are the secret itself. Fixed in 0.2.3, which returns only has_notes. If you ran either tool on an older version, treat the secrets kept in notes as exposed to your agent's context and its model provider.

0.2.3 is on npm (published with provenance) and is the latest tag, so a plain npx -y @aiwerk/mcp-server-vault gets the fixed version. Only an explicit @0.2.2 pin still gets the vulnerable one.

Exposes 6 tools over stdio. Secret values and note contents are never sent in plaintext through list_vault_items or get_vault_metadata. Secrets are delivered only through Bitwarden Sends (E2E-encrypted one-time URLs).

Install

npx -y @aiwerk/mcp-server-vault

Related MCP server: VaultBridge

Configure

Variable

Required

Default

Description

VAULT_API_BASE

✅

—

Base URL of your Bitwarden/Vaultwarden instance (no trailing slash), e.g. https://pass.aiwerk.ch

VAULT_CLIENT_ID

✅

—

Personal API key client_id (e.g. user.abc-def-1234)

VAULT_CLIENT_SECRET

✅

—

Personal API key client_secret

VAULT_MASTER_PASSWORD

✅

—

Vault master password (used for E2E decryption key derivation)

VAULT_EXPOSED_COLLECTION

—

mcp-exposed

Name of the collection visible to agents

VAULT_AGENT_CREATED_COLLECTION

—

mcp-agent-created

Name of the collection for agent-created secrets

VAULT_API_TIMEOUT_MS

—

15000

HTTP timeout in milliseconds

DRY_RUN

—

0

Set 1 to log write operations without executing them

READ_ONLY

—

0

Set 1 to block all write operations (Send creation and save)

Auth — Personal API Key

  1. Log in to your Bitwarden/Vaultwarden instance

  2. Go to Account Settings → Security → Keys → API Key

  3. Note the client_id and client_secret

  4. Reference: https://bitwarden.com/help/personal-api-key/

Vault Setup

Before using this server, create two collections in your Vaultwarden organization:

  • mcp-exposed — items you want to expose to agents (your existing secrets: API keys, passwords, etc.)

  • mcp-agent-created — items written by agents via save_generated_secret

Add items to mcp-exposed via the Vaultwarden web UI.

Custom fields

Optionally add these custom fields to items in mcp-exposed for fine-grained control:

Field

Type

Purpose

mcp-scope

text

Comma-separated glob list of tool/server names allowed to use this item (e.g. stripe.*,openai)

mcp-chat-reveal-allowed

text

"true" to allow chat delivery of the Send URL

mcp-delivery-channel

text

"chat" (default), "telegram", or "email"

Tools

Tool

Description

list_vault_items

List items from mcp-exposed and mcp-agent-created. Returns metadata only — no secret values.

get_vault_metadata

Get full metadata for a named item (name, type, username, URIs, custom fields, expiry). No password/secret.

reveal_secret_via_send

Reveal a secret via a Bitwarden Send (E2E-encrypted one-time URL with configurable TTL and max-views).

get_totp_code

Get the current TOTP code for a login item, including remaining seconds in the period.

save_generated_secret

Save an agent-generated secret (password / api-key) into mcp-agent-created as a secure note. CREATE-only — no overwrite.

save_login_item

Save sign-in credentials (username + password + optional URL + TOTP seed) into mcp-agent-created as a real login item. CREATE-only — no overwrite.

health_check

Check connectivity: auth status, API version, collection visibility, item counts, latency.

Security model

  • Opt-in exposure: only items in mcp-exposed or mcp-agent-created are accessible; all other items return item_not_visible

  • Read-only existing items: no update_*, delete_*, or change_* tools exist

  • Secret value delivery via Send only: list_vault_items and get_vault_metadata never return passwords, TOTP seeds, or api-key values

  • E2E encryption preserved: the server decrypts vault data locally (master password stays in env vars, never sent over the wire)

  • Constrained agent writes: save_generated_secret and save_login_item are CREATE-only into the dedicated mcp-agent-created collection

Note: Actual {{vault:NAME}} placeholder resolution in tool call arguments happens in the AIWerk hosted bridge, not in this server. The bridge's resolution uses the same BYOC credentials. See the bridge-patch companion document for details.

License

MIT — AIWerk kontakt@aiwerk.ch

Homepage: https://aiwerkmcp.com

Available Tools

7 tools
get_totp_codeA
Read-only

Get the current TOTP code for a vault login item with TOTP configured. Returns the 6-digit code, the remaining seconds in the current period, and the algorithm. Use the remaining_seconds field to decide whether to use the code immediately or wait for a fresh period.

Inputs: name (required).

get_vault_metadataA
Read-only

Get full metadata for a named vault item. Returns name, type, username (for login items), URIs, custom fields, scope, expiry, and whether the item has notes. Password, TOTP seed, api-key values and note contents are NEVER returned. Use reveal_secret_via_send (field "notes" for the notes) or get_totp_code instead.

Inputs: name (required).

health_checkA
Read-only

Check connectivity and configuration of the Bitwarden/Vaultwarden vault. Authenticates, syncs, and reports: auth status, API version, collection visibility, item counts, latency. Run this first after a new install or after rotating credentials.

Inputs: no named parameters.

list_vault_itemsA
Read-only

List vault items from the mcp-exposed and mcp-agent-created collections. Returns metadata only. Secret values and note contents are NEVER included (has_notes says whether notes exist). Use reveal_secret_via_send to obtain the actual value through a secure Bitwarden Send URL.

Inputs: filter, collection.

reveal_secret_via_sendA

Reveal a vault secret through a Bitwarden Send, an E2E-encrypted one-time URL. Creates a temporary Send with a configurable TTL and max-views limit. The secret value is encrypted client-side; only the URL fragment (never sent to server) can decrypt it. Blocked when READ_ONLY=1. Logs to DRY_RUN without creating a real Send when DRY_RUN=1.

Inputs: name (required), field, max_views, ttl_seconds.

save_generated_secretA

Save an agent-generated secret into the mcp-agent-created collection. CREATE-only: cannot overwrite an existing item (name collision returns an error). The secret is E2E-encrypted with the vault org key before transmission. Sets mcp-created-by, mcp-created-at, mcp-expires-at, and mcp-used-in custom fields automatically. Blocked when READ_ONLY=1. Logs to DRY_RUN without creating a real cipher when DRY_RUN=1.

Inputs: name (required), type (required), value (required), notes, +2 more.

save_login_itemA

Save login credentials (username, password, URL, optional TOTP seed) as a Vaultwarden login item in the mcp-agent-created collection. Use this instead of save_generated_secret when the credential is a sign-in (username + password), so it surfaces as a real login item with get_totp_code support. CREATE-only: cannot overwrite an existing item (name collision returns an error). At least one of username or password is required. All fields are E2E-encrypted with the vault org key before transmission. Sets mcp-created-by, mcp-created-at, mcp-expires-at, and mcp-used-in custom fields automatically. Blocked when READ_ONLY=1. Logs to DRY_RUN without creating a real cipher when DRY_RUN=1.

Inputs: name (required), uri, totp, notes, +4 more.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.1/5.0

    Scored across 7 tools

    Disambiguation4/5

    Each tool has a largely distinct purpose, and descriptions explicitly cross-reference alternatives (e.g. save_login_item vs save_generated_secret, reveal_secret_via_send vs get_totp_code). The main overlap is list_vault_items vs get_vault_metadata, which both return metadata, though the descriptions clarify listing vs single-item detail.

    Naming Consistency4/5

    Most tools follow a clear verb_noun pattern (list_vault_items, get_vault_metadata, reveal_secret_via_send, save_generated_secret, save_login_item, get_totp_code). health_check is the only noun-style outlier, but it is a widely conventional name, so consistency is mostly maintained.

    Tool Count5/5

    Seven tools is well-scoped for a vault integration, covering listing, reading, revealing, writing, TOTP, and health. No tool appears redundant or filler.

    Completeness3/5

    Read and create operations are well covered (list, metadata, reveal, save secret, save login, TOTP, health), but the lifecycle is incomplete: there is no update, delete, or revoke operation for items or Sends. Agents cannot modify or clean up existing vault entries, which is a notable gap for a credential store.

    Maintenance

    ActivityNo data
    ResponsivenessSyncing

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      B
      maintenance
      MCP server for Vaultwarden/Bitwarden vault management. Enables AI agents to securely create, search, read, and update vault items via the official Bitwarden CLI, with safe-by-default redaction and support for both stdio and SSE transports.
      53
      2,126 npm
      27
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      Secret management MCP server for AI coding agents that prevents secrets from entering the LLM context window by returning metadata only and using side-channel injection. Integrates with Bitwarden and offers hooks for auto-capture and leak prevention.
      1
      MIT
    • A
      license
      A
      quality
      C
      maintenance
      An MCP server for using Bitwarden Secrets Manager as durable credential storage for agent workflows, enabling secure secret storage, retrieval, and injection into trusted executables.
      7
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      MCP server enabling AI agents to use secrets (API keys, tokens) via encrypted vault, executing HTTP/shell/SSH actions server-side while never exposing secret values to the AI.
      MIT