Module 02 · MCP server
offline · deterministic

Every tool call leaves a structured trace

Safe, audited connections between AI and your real systems.

Real audit records from the in-process Module 2 guardrail demo (mcp-template-demo). Caller is masked. Outcomes shown: ok, blocked_allowlist, invalid_input, rate_limited. The unauthorized (HTTP 401) call fails at transport auth before the guardrail pipeline, so it leaves no audit record.

server demo-mcp6 calls audited

Guardrail outcomes

One in-process session drives a good call and every kind of blocked call. Fail-closed order: unknown tool → allowlist → rate limit → validate → execute — a block short-circuits but is still audited.

Calls audited
6
Allowed
3
Blocked
3
Outcomes exercised
okblocked_allowlistinvalid_inputrate_limited

Audit log

Every call — allowed or blocked — is one record: the tool, the outcome, sub-millisecond latency, and (for a block) the exact error the caller got back. Tap a row for the detail. The unauthorized 401 fails at transport, before the pipeline, so it leaves no record.

tooloutcome · latency