Local stdio↔HTTP MCP proxy that talks to Iceberg Data's vault-mcp deploy (Mac Studio via Tailscale). Injects a static bearer token on every request — the token lives in an env var, not a subprocess.
This project has been archived.
The maintainers of this project have marked this project as archived. No new releases are expected.
Project description
vault-mcp-client
Local stdio↔HTTP MCP proxy for Iceberg Data's private vault-mcp service (hosted on a Mac Studio, reachable only over the Iceberg Tailnet).
Claude Code registers this binary as a stdio MCP server. On each tool call the proxy forwards the JSON-RPC message over HTTPS to the Tailnet URL, injecting a static bearer token on every request.
Install
pipx install vault-mcp-client
Requirements on the workstation:
- Logged into Tailscale as an Iceberg Data member.
- You have the shared bearer token (ask Julian — it's distributed out-of-band).
Register with Claude Code
claude mcp add vault vault-mcp-client \
--scope user \
-e VAULT_MCP_URL=https://mac-studio.tailXXXXXX.ts.net \
-e VAULT_MCP_TOKEN=<bearer-token-from-julian>
Restart Claude Code → /mcp should show vault: ✓ Connected.
Verify
Ask Claude: "use server_info of the vault MCP". Expected response: the deploy metadata (version, repo root, auto-push flag, etc.).
Troubleshooting
- 401 Unauthorized: token mismatch. Confirm
VAULT_MCP_TOKENmatches what the server has. - Connection refused / timeout: you're not on the Iceberg Tailnet, or the Mac is offline. Run
tailscale statusand ping the Mac's Tailnet hostname. - SSL / cert error: Tailscale handles certs via MagicDNS — if this pops up, your Tailscale client is outdated (
brew upgrade tailscaleor reinstall from the App Store).
Design notes
Auth is a static token because the vault-mcp server is single-tenant and reachable only inside the Tailnet. The audit trail lives in git (every write is a commit by vault-mcp-bot). If you need dynamic per-user auth later, swap the BearerAuth class in proxy.py for an OAuth/IAP-aware one.
Related: wse-dev-mcp-client is the sister package that talks to Iceberg's public Cloud Run MCP deploy using Google identity tokens instead of a static bearer.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vault_mcp_client-0.1.0.tar.gz.
File metadata
- Download URL: vault_mcp_client-0.1.0.tar.gz
- Upload date:
- Size: 3.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fab036f5b1fc5980c1270f952f1cb2b735acd273e4d3c6adb1dee6b50789c142
|
|
| MD5 |
6451a4ca8ca3affecdecf1d30178c27d
|
|
| BLAKE2b-256 |
e2f6c75a149304c14fc2ba956194cc8c0e465ee21e1aeb4e5c0f18be34edd54b
|
File details
Details for the file vault_mcp_client-0.1.0-py3-none-any.whl.
File metadata
- Download URL: vault_mcp_client-0.1.0-py3-none-any.whl
- Upload date:
- Size: 4.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
560d349872872e2440612410c466a024774c35a8e4d0a6d0be9342ed39a66e05
|
|
| MD5 |
600360ed11701e34d58a402bc42ac57a
|
|
| BLAKE2b-256 |
76d99666b3e8135baf0c787a655f664f5599395addce8f4a0dc50cab4c65071d
|