Control & Provenance
The layer a request-scoped proxy can't reach: CloudVera sees the agent's decision loop across a whole session, not one request at a time. A typed execution-provenance graph is the substrate; detection and enforcement are built on top.
Features
Execution Provenance
GET /api/ai-gateway/agents/:agentId/sessions/:sessionId/provenance returns a typed graph of the session β prompt, tool_call, retrieval, egress, and event nodes, linked by sequence / caused_by / evidence_for edges. It shows what the agent did, in order, which retrieval was evidence for which tool call, and where an injected instruction entered.
Lethal-Trifecta Detection
An agent is exploitable when one session combines all three legs β untrusted content ingested, private/sensitive data access, and an external egress path. Each is fine alone; the combination enables exfiltration. CloudVera flags the combination (a cross-tool-call correlation) and records a critical security event (β violation) β surfaced in the Session Forensics view with per-leg evidence.
Inline MCP Proxy
Point an MCP client at POST /api/ai-gateway/mcp-proxy/:serverId (auth with a cvk_ or cva_ key). CloudVera screens each JSON-RPC message ON THE WIRE β blocking blocked, injection-flagged, or non-allowlisted servers (and, once a server's tools have been catalogued, tools outside that scanned set), and masking PII in tool arguments before egress β then forwards to the registered MCP server. True inline enforcement a non-SDK client can't bypass.
Agent Posture (AISPM)
GET /api/ai-gateway/agents/:agentId/posture scores how an agent is configured before it runs β tool policy, per-tool approval, intent-drift mode, session budget and step caps, the tenant egress allowlist, key expiry/staleness, and the review state of reachable MCP servers β as an AβF grade with a one-line fix per finding. GET /api/ai-gateway/agents/posture rolls the whole tenant up.
SIEM Export
Stream every security event and violation to Splunk, Datadog, Sentinel or any log pipeline as a normalized, ECS-flavoured record (event.outcome, event.severity, threat.technique.id for MITRE ATLAS, compliance.owasp_llm / nist_ai_rmf). Push: a webhook subscribed to security.event / violation.created / violation.status_changed with format splunk_hec or datadog β the secret is sent as the sink token. Pull: GET /api/siem/feed?since=&cursor=&dataset=&format= with a cv_ personal access token; GET /api/siem/schema documents every field with a sample.
Framework Mapping & Outcome
Every security event, violation, and provenance event node carries frameworkRefs β the OWASP LLM Top 10 (2025), MITRE ATLAS, and NIST AI RMF controls it evidences β and an outcome of prevented (blocked or redacted inline) or detected (observed, request went through). Both are computed on read, so historical events are covered; filter events with ?outcome=prevented|detected.
Coding-Agent Hooks (Claude Code, Cursor)
npm i -g @cloudvera/coding-agent-hooks, then cloudvera-hook install claude-code | cursor. Every tool call the coding agent makes (Bash, Read, WebFetch, MCPβ¦) is recorded as a CloudVera tool call before it runs β tool allowlist, per-tool approval, intent drift and budgets apply, and a blocked call is denied in the editor. Credential-file reads (~/.ssh, ~/.aws, .env, keychain) and fetch/browse tools feed the lethal-trifecta detector, so an agent that read a secret and then reached the internet raises an incident. POST /agents/:id/sessions/external maps the agent's own session id onto one CloudVera session.
Auto-Triage (Guardian)
Every violation gets a verdict (confirmed / likely false positive / needs review), a P1βP4 priority, the evidence behind them and one-click actions β require approval for the tool, switch the agent to an allowlist, enforce intent, block the MCP server, kill the agent's sessions, mark false positive β computed by a deterministic engine over the event, the session provenance graph, the lethal-trifecta assessment, the agent's posture and the 30-day false-positive base rate; Claude writes the prose when a key is configured. A scheduled sweep assesses new violations within the hour; GET/POST /api/ai-security/violations/:id/triage and β¦/triage/apply.
Delegation-Chain Enforcement
For multi-agent calls, pass the who-delegated-to-whom chain (X-Delegation-Chain header or the SDK). CloudVera enforces a delegation-depth bound and holder-side scope attenuation β a sub-agent can't be handed authority its delegator didn't hold, and the invoked tool must be within the final delegated scope β which the transport-level OAuth/bearer auth can't see.