bw-proxy
Manages Bitwarden organization vaults with ACID transactions, WAL logging, and human-in-the-loop approval for mutations while keeping secrets blind from AI agents.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@bw-proxylist items in the 'Engineering' collection"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
๐ 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 RuntimeRelated MCP server: AgentPay MCP Server
๐ 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 bashWhat it does internally:
Image: Pulls
ghcr.io/kpihx/bw-proxy:latest.Binary: Creates
/usr/local/bin/bw-proxy(owned by root).Config: Creates
/etc/bw-proxy/.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:
Port Allocation: The host shim finds a free random port.
Container Launch: The appliance starts, mapping the internal HITL server to that port.
URL Interception: The shim detects the Approval URL in stdout and automatically opens your browser.
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 scanAI 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.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/KpihX/bw-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server