bw-proxy

bw-proxy

Enables secure Bitwarden organization vault control with AI agents, featuring human-in-the-loop approval, ACID-compliant transactions, and redacted access to keep secrets hidden from LLMs.

Category
Visit Server

README

๐Ÿ” BW-Proxy โ€” Sovereign Bitwarden Appliance

Zero Trust ยท AI-Blind ยท ACID Durable
The authoritative appliance for Bitwarden organization vault control. Keep AI agents and LLMs blind to your real secrets while giving them full auditing and refactoring powers.


๐Ÿ›๏ธ Project Architecture (Sovereign Tree)

BW-PROXY PROJECT
โ”œโ”€โ”€ ๐Ÿ“‚ src/bw_proxy/     โ—„โ”€โ”€ Core Engine (ACID Transaction, WAL, Redaction)
โ”œโ”€โ”€ ๐Ÿ“‚ scripts/          โ—„โ”€โ”€ Host-side Shims (Dynamic porting, Browser HITL)
โ”œโ”€โ”€ ๐Ÿ“‚ docs/             โ—„โ”€โ”€ Deep-dive Hardening & Operator Guides
โ”œโ”€โ”€ ๐Ÿ“„ install.sh        โ—„โ”€โ”€ System-wide Appliance Installer (Root-owned)
โ”œโ”€โ”€ ๐Ÿ“„ Makefile          โ—„โ”€โ”€ Developer & Release Automator
โ””โ”€โ”€ ๐Ÿ“„ Dockerfile        โ—„โ”€โ”€ Multi-stage Hardened Runtime

๐Ÿš€ Installation Modes

A. Appliance Mode (Standard Pro)

Ideal for production use. Installs a root-owned binary and uses the official image.

Via curl (Zero-Clone):

curl -fsSL https://raw.githubusercontent.com/KpihX/bw-proxy/main/install.sh | sudo bash

What it does internally:

  1. Image: Pulls ghcr.io/kpihx/bw-proxy:latest.
  2. Binary: Creates /usr/local/bin/bw-proxy (owned by root).
  3. Config: Creates /etc/bw-proxy/.
  4. Data: Creates a persistent Docker volume bw_mcp_bw-data.

B. Developer Mode (Source Clone)

Ideal for contribution or source-level auditing.

git clone https://github.com/KpihX/bw-proxy.git
cd bw-proxy
make docker-install  # Requires SUDO for builds

โš™๏ธ Core Mechanisms (The Magic)

1. The HITL Browser Flux

When an AI agent requests a vault change, the proxy intercepts the execution:

  1. Port Allocation: The host shim finds a free random port.
  2. Container Launch: The appliance starts, mapping the internal HITL server to that port.
  3. URL Interception: The shim detects the Approval URL in stdout and automatically opens your browser.
  4. Human Approval: You review the rationale and the diff, then approve with your Master Password.

2. The 3-Phase ACID Commit (WAL)

Every mutation is transactional.

  • Simulation: Actions are validated in RAM first.
  • WAL: Actions are encrypted and logged to disk before execution.
  • Commit: Actions are sent to the Bitwarden CLI.
  • Rollback: If a crash occurs, the proxy performs a LIFO rollback on the next start.

3. Scoped Union Fetch

To handle organizational vaults without metadata loss:

  • The proxy discovers all accessible Organizations and Collections first.
  • It then performs scoped queries (--organizationid) to fetch "rich" items with full metadata.
  • It merges results with the global vault list, ensuring organizational assignments are preserved.

๐Ÿ•น๏ธ Interface Modes

1. CLI Mode (Recommended for Humans & AI Agents) ๐Ÿš€

The CLI is the most efficient and agnostic way to interact with the appliance. It uses RPC 2.0 (JSON), supports exact examples, and provides rich help documentation.

For AI Agents: Using the CLI via run_command is more token-efficient than MCP and offers greater flexibility.

bw-proxy admin status   # Health check
bw-proxy admin unlock   # Create a 5-minute session lease
bw-proxy do list-items  # Quick redacted scan

[!TIP] AI Integration: To enable full AI recognition of these commands, copy the .agents/skills/bw-proxy directory to your global ~/.agents/skills/ or into a project-specific .agents/skills/ directory.

2. MCP Mode (Standard Stdio)

Start the stdio server for standard MCP clients like Gemini, Claude, or Cursor.

bw-proxy mcp serve

๐Ÿ› ๏ธ Maintenance & Release

  • Update: curl ... | sudo bash (re-runs the installer).
  • Uninstall: sudo ./uninstall.sh.
  • Release (Dev): make release (automatic tagging and GHCR propulsion).

โš–๏ธ License

MIT License. See LICENSE for details.

Designed with โค๏ธ by KpihX.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured