This release includes 6 security fixes for security teams reviewing exposed deployments.
Topics
+7 more
Affected surfaces
ReleasePort's take
Light signalAgentVeil MCP Proxy v0.1 remediates 12 medium‑severity and 8 low‑severity audit findings, adds encryption for identity storage, hardens file writes, caps JSON‑RPC payload size at 1 MiB, and introduces runtime decision gating with replay‑cache validation.
Why it matters: Patch to v0.1 immediately; it resolves medium‑severity audit issues (12) and implements critical security controls such as Argon2id encryption, fsync on identity/config writes, 1 MiB payload limits, and replay‑cache validation.
Summary
AI summaryFirst public release of AgentVeil MCP Proxy v0.1 with runtime decision gating, approval routing, evidence storage, and security hardening.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Security | High |
Completed P10.5 security audit remediation: 12 MEDIUM, 8 LOW findings identified; 10 MEDIUM closed; M-2 mitigated with replay cache; M-10 deferred to v0.1.1 Completed P10.5 security audit remediation: 12 MEDIUM, 8 LOW findings identified; 10 MEDIUM closed; M-2 mitigated with replay cache; M-10 deferred to v0.1.1 Source: granite4.1:30b@2026-05-23-audit Confidence: low |
— |
| Security | Medium |
Receipt audit_id cross-checking and duplicate receipt-reference rejection in verifier Receipt audit_id cross-checking and duplicate receipt-reference rejection in verifier Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Security | Medium |
RuntimeGateClient replay-cache settings require positive-value validation RuntimeGateClient replay-cache settings require positive-value validation Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Security | Medium |
CLI identity, config, and grant writes hardened with fsync CLI identity, config, and grant writes hardened with fsync Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Security | Medium |
JSON-RPC client-to-proxy message line capped at 1 MiB JSON-RPC client-to-proxy message line capped at 1 MiB Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Security | Medium |
Downstream response bookkeeping with in-flight ID tracking and TTL pruning Downstream response bookkeeping with in-flight ID tracking and TTL pruning Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Security | Medium |
Required DecisionReceipt schema validation fields in offline evidence verification Required DecisionReceipt schema validation fields in offline evidence verification Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Security | Medium |
Remediated 12 MEDIUM and 8 LOW security audit findings from P10.5 Remediated 12 MEDIUM and 8 LOW security audit findings from P10.5 Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Security | Medium |
Encrypted local proxy identity storage with Argon2id and SecretBox Encrypted local proxy identity storage with Argon2id and SecretBox Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Security | Medium |
Local TTL-capped DecisionReceipt replay cache as compensating control Local TTL-capped DecisionReceipt replay cache as compensating control Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Security | Medium |
Environment variable blocking prevents AVP_* prefix forwarding to downstream servers Environment variable blocking prevents AVP_* prefix forwarding to downstream servers Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Security | Medium |
Mid-train audit addressed MT-1, MT-2, MT-3; deferred MT-4, MT-5 Mid-train audit addressed MT-1, MT-2, MT-3; deferred MT-4, MT-5 Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Security | Medium |
Completed post-P10.9 mid-train audit: 2 MEDIUM, 3 LOW findings identified; MT-1, MT-2, MT-3 closed; MT-4 and MT-5 accepted as v0.1 LOW risk Completed post-P10.9 mid-train audit: 2 MEDIUM, 3 LOW findings identified; MT-1, MT-2, MT-3 closed; MT-4 and MT-5 accepted as v0.1 LOW risk Source: granite4.1:30b@2026-05-23-audit Confidence: low |
— |
| Security | Medium |
Annotated Bandit B608 SQL false‑positive cluster with `# nosec B608` comments Annotated Bandit B608 SQL false‑positive cluster with `# nosec B608` comments Source: granite4.1:30b@2026-05-23-audit Confidence: low |
— |
| Feature | Medium |
Runtime Gate integration with DecisionReceipt verification and schema enforcement Runtime Gate integration with DecisionReceipt verification and schema enforcement Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Feature | Medium |
Loopback browser approval server with CSRF, HMAC, and token controls Loopback browser approval server with CSRF, HMAC, and token controls Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Feature | Medium |
Durable SQLite evidence store with WAL mode and hash chaining Durable SQLite evidence store with WAL mode and hash chaining Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Feature | Medium |
Offline evidence bundle export with chain integrity and receipt validation Offline evidence bundle export with chain integrity and receipt validation Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Feature | Medium |
Headless approval mode with bounded policy support and validation Headless approval mode with bounded policy support and validation Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Feature | Medium |
Built-in policy packs for default, github, filesystem, and shell Built-in policy packs for default, github, filesystem, and shell Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Feature | Medium |
Expanded destructive operation classification with purge, truncate, wipe, format Expanded destructive operation classification with purge, truncate, wipe, format Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Feature | Medium |
MCP transport proxy console script and Python module entry point MCP transport proxy console script and Python module entry point Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Feature | Medium |
Cross-platform CI coverage across 3 operating systems and 4 Python versions Cross-platform CI coverage across 3 operating systems and 4 Python versions Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Feature | Medium |
MCP Proxy subproject README and operations guide documentation MCP Proxy subproject README and operations guide documentation Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Feature | Low |
Verified public documentation for attribution wording and prohibited terminology Verified public documentation for attribution wording and prohibited terminology Source: granite4.1:30b@2026-05-23-audit Confidence: low |
— |
Full changelog
[0.7.14] - 2026-05-11
AgentVeil MCP Proxy v0.1 first public release. Action Control Plane for IDE
MCP clients wrapping downstream MCP servers with runtime decision gating,
human approval routing, durable signed evidence, and replay defense.
Added
- Added the
agentveil-mcp-proxyconsole script and
python -m agentveil_mcp_proxyentry point for MCP transport proxy
operation. - Added encrypted local proxy identity storage with Argon2id and SecretBox,
passphrase-file support,AVP_PROXY_PASSPHRASE, a 12-character minimum for
new identities, and documented passphrase-source trade-offs. - Added Runtime Gate integration with DecisionReceipt verification, schema
enforcement, audit ID binding, payload hash binding, risk class binding,
policy context hash binding, and circuit breaker handling. - Added a local TTL-capped DecisionReceipt replay cache as a v0.1 compensating
control before the backend nonce/freshness protocol update. - Added the loopback browser approval server with CSRF checks, HMAC cookies,
per-prompt tokens, Content-Length bounds, socket timeouts, and
ThreadingHTTPServer. - Added a durable SQLite evidence store with WAL mode, hash chaining, fsync
durability, owner-only permissions, and auxiliary WAL/SHM permission
hardening after commits. - Added offline evidence bundle export and verification covering chain
integrity, signed receipt validation, receipt binding checks, audit ID
matching, and receipt-reference dedupe. - Added headless approval mode and bounded headless policy support with
owner-only policy-file validation. - Added built-in policy packs for
default,github,filesystem, and
shell, including broadened destructive coverage forpurge_*,
truncate_*,wipe_*,format_*,rm,rmdir_*,unlink_*, and
clean_*patterns where applicable. - Expanded destructive classification prefixes with
purge,truncate,
wipe,format,rm,rmdir,unlink, andclean. - Added cross-platform CI coverage across 3 operating systems and 4 Python
versions, workflow dispatch support, pinned GitHub Actions SHAs, and
permissions: contents: read. - Added
env_passthroughblocking for the reservedAVP_*prefix so proxy
secrets cannot be forwarded to downstream MCP servers by configuration. - Added the MCP Proxy subproject README and the operations guide at
docs/MCP_PROXY_OPERATIONS.md.
Security
- Completed the P10.5 security audit remediation train: 12 MEDIUM and 8 LOW
findings were identified across independent passes; 10 MEDIUM findings were
closed in P10.6-P10.10, M-2 received the local replay-cache mitigation, and
M-10 was deferred to v0.1.1. - Completed the post-P10.9 mid-train audit: 2 MEDIUM and 3 LOW findings were
identified; MT-1, MT-2, and MT-3 were closed in P10.10, while MT-4 and MT-5
were accepted as v0.1 LOW risk. - Annotated the 14-site Bandit B608 SQL false-positive cluster with narrow
# nosec B608rationale comments. - Verified public documentation surfaces for attribution wording and prohibited
product terminology. - Added receipt
audit_idcross-checking and duplicate receipt-reference
rejection to the offline verifier. - Added positive-value validation for RuntimeGateClient replay-cache settings.
- Hardened CLI identity, config, and grant writes with file fsync and parent
directory fsync. - Added a 1 MiB client-to-proxy JSON-RPC line cap matching the downstream
message cap. - Bounded downstream response bookkeeping with in-flight ID tracking,
TTL-pruned timed-out IDs, unsolicited-response counting, and retained
response caps. - Required DecisionReceipt schema, audit ID, and receipt binding fields in
offline evidence verification.
Known Limitations
- Backend protocol nonce/freshness: the local replay cache mitigates
same-process replays within a five-minute window. The v0.1.1 protocol update
adds backend-issued nonce plusissued_atandexpires_atfields to a new
decision_receipt/3schema. Same-intent replays across proxy restarts and
against a compromised backend response channel remain possible in v0.1. - Windows Job Object race: Windows downstream process containment has a
narrowstart()window where a child process can spawn descendants before
assignment to the Job Object. Use an external Windows service supervisor for
production Windows deployments until the v0.1.1 fix lands. - OS keychain identity storage: v0.1 uses passphrase-encrypted Argon2id
identity files. v0.1.1+ adds opt-in macOS Keychain, Linux Secret Service, and
Windows Credential Manager integration. - P7a WAL/SHM creation-window race: the evidence store chmods auxiliary
SQLite files after every commit; a small in-flight transaction window still
depends on the user umask. Accepted as v0.1 LOW risk. - P7b runtime-only chain validation: chain integrity is validated at store
open and after write transactions; there is no periodic background chain
validation during a long-running proxy. Periodic restarts are the v0.1
mitigation. - MT-4 receipt cache eviction under sustained burst: sustained high-volume
legitimate receipts can evict captured receipts before the nominal TTL,
weakening local replay defense in adversarial timing scenarios. The v0.1.1
protocol nonce/freshness fix supersedes this mitigation. - MT-5
granted_by_request_idreference validation: the verifier does not
dereference cache-hitgranted_by_request_idvalues to prove the referenced
record exists in the same bundle. Manual auditors should cross-check those
references when reviewing cache-hit evidence.
Audit References
- Closed P10.5-security findings: M-1, M-3, M-4, M-5, M-6, M-7, M-8, M-9.a,
M-9.b, M-11, M-12, L-1, L-2, L-3, Codex MEDIUM-1, Codex LOW-2, and
Codex LOW-3. - Closed mid-train audit findings: MT-1, MT-2, and MT-3.
- Partial mitigation: M-2 local replay cache; full protocol fix deferred to
v0.1.1. - Deferred v0.1.1: M-2 and M-10.
- Accepted as v0.1 LOW risk: MT-4, MT-5, P7a residual, and L-4 through L-8.
- Commits:
0e6583c(P10.6),5c14f37(P10.7),5a89148(P10.8),
de43147(P10.9),3577e4b(P10.10), andbddf600(P10.11).
Validation
- P11 release gate passed: main CI matrix green on 12/12 cells, full local
pytest passed with642 passed, 1 skipped, Bandit reported 0 HIGH and
0 MEDIUM findings, pip-audit reported 0 known vulnerabilities, public-surface
wording scans passed, console scripts worked, build artifacts included the
MCP Proxy README, and license/security metadata was verified.
Security Fixes
- Local TTL‑capped DecisionReceipt replay cache added as compensating control for M-2 (local replay defense).
- Audit `audit_id` cross‑checking and duplicate receipt‑reference rejection in offline verifier.
- Positive‑value validation for RuntimeGateClient replay‑cache settings.
- Hardened CLI identity, config, and grant writes with fsync of files and parent directories.
- 1 MiB JSON‑RPC line cap enforced on client‑to‑proxy messages to match downstream limit.
- Downstream response bookkeeping bounded via in‑flight ID tracking, TTL pruning, unsolicited‑response counting, and retained response caps.
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About creatorrmode-lead/avp-sdk
Trust, identity (W3C DID), and EigenTrust reputation for AI agents. Attestations, disputes, sybil detection, IPFS audit anchoring.
Related context
Related tools
Beta — feedback welcome: [email protected]