
vaultmcp/vault
Developer tools이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기
vaultmcp/vault는 [[T0]에서 가져온 MCP 서버 후보입니다.
개요
vaultmcp/vault는 [[T0]에서 가져온 MCP 서버 후보입니다.
개요(AI 번역)
사이트: vaultmcp.io · X: @vaultmcp · 저장소: github.com/vaultmcp/vault
Vault는 MCP용 프로덕션 프롬프트 주입 방화벽입니다. 에이전트가 모든 도구 응답을 읽기 전에 가로채고, 네 가지 감지 계층(L0 결정적 디코더, L1 휴리스틱, L2 임베딩 유사성, L3 LLM 판단)을 스캔합니다.
퀵스타트
어떤 MCP 서버든 랩 하세요 — 에이전트 설정 변경 필요:
그게 전부입니다 — 모든 도구 응답이 에이전트가 보기 전에 스캔됩니다. 에이전트를 서버 대신 프록시로 가리키세요.
**증명: ** 동결된 공개 문서에 대해 100% TPR(80/80), 100건의 무해한 문서에 대해 0.0% FPR — 측정된 성능 참조. 네 가지 계층이 어떻게 작동하는지: 작동 방식. 키가 없나요? 볼트는 L1+L2만 실행 — 오프라인 모드를 참조하세요.
신중한 공연
아래 모든 수치는 이 저장소에 커밋된 하네스에서 재현 가능합니다. 각 숫자는 커밋과 측정된 데이터셋이 각주로 표시되어 있습니다.
| 메트릭 | 값 | 출처 |
|---|---|---|
| TPR — v2 홀드아웃 (L3 활성화, 80 공격) | 100% (80 / 80) · 95.5%+ 95% CI에서의 하한선 | [^holdout-l3] |
| TPR — L1+L2만 사용, API 키 없음 | 실질적으로 낮음 (생산에 L3 필요) | [^홀드아웃-저하됨] |
이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요.
README
원문 README의 일부입니다. 원문 보기.
Vault — MCP Prompt Injection Firewall
Site: vaultmcp.io · X: @vaultmcp · Repo: github.com/vaultmcp/vault
Vault is a production prompt-injection firewall for MCP. It intercepts every tool response before your agent reads it and scans through four layers of detection (L0 deterministic decoder, L1 heuristics, L2 embedding similarity, L3 LLM judge).
Quickstart
Wrap any MCP server — no config change to your agent:
# Set a key for full detection (or run without one for L1+L2 offline mode)
export ANTHROPIC_API_KEY=sk-ant-...
# Put Vault in front of any MCP server
npx @aimcpvault/mcp-proxy -- npx -y @modelcontextprotocol/server-filesystem /data
That’s it — every tool response is now scanned before your agent sees it. Point your agent at the proxy instead of the server.
Proof: 100% TPR (80/80) on a frozen public holdout, 0.0% FPR on 100 benign docs — see Measured performance. How the four layers work: How it works. No key? Vault runs L1+L2 only — see Offline mode.
Measured performance
All numbers below are reproducible from the harness committed in this repo. Each is footnoted with the commit and dataset it was measured on.
| metric | value | source |
|---|---|---|
| TPR — v2 holdout (L3 enabled, 80 attacks) | 100% (80 / 80) · 95.5%+ lower bound at 95% CI | [^holdout-l3] |
| TPR — L1+L2 only, no API key | materially lower (L3 is required for production) | [^holdout-degraded] |
| False positive rate (benign flagged) | 0.0% (0 / 100) | [^holdout-l3] |
| L1 latency (p50 / p99) | 0.02 ms / 0.04 ms | [^latency] |
| L2 latency (p50 / p99) | 8.86 ms / 15.11 ms | [^latency] |
| L3 latency (per call) | ~1.5–2 s (provider round-trip) | [^latency] |
| Sustained throughput (single proxy) | 100 req/s, 0 errors over 30,000 requests | [^load] |
| Steady-state memory (RSS) | 135–180 MB after warmup, no leak observed | [^load] |
| 500 KB response scan time | ~25 s (embedder-bound, see LIMITATIONS §14) | [^edge] |
[^holdout-l3]: packages/eval/results/eval-clean-baseline-v2-L3-enabled-2026-05-21.md — one-shot eval against v2 holdout constructed after detection code was frozen at commit 8d230e4. Dataset: packages/eval/datasets/holdout-v2-novel/ (50 attacks) + packages/eval/datasets/holdout-v2-paraphrase/ (30 attacks) + packages/eval/datasets/benign-v2/ (100 entries). L3 enabled (Anthropic Haiku 4.5). No tuning occurred between holdout construction and eval run.
설치
npx @aimcpvault/mcp-proxy -- npx -y @modelcontextprotocol/server-filesystem /path설정
// ~/.claude/mcp_settings.json (or claude_desktop_config.json)
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": [
"@aimcpvault/mcp-proxy",
"--",
"npx", "-y", "@modelcontextprotocol/server-filesystem", "/path"
]
}
}
}