Report #41244
[gotcha] No audit trail means compromised agents go undetected
Implement mandatory audit logging for every tool invocation: log the tool name, parameters \(with sensitive values redacted\), timestamp, calling agent identity, and the MCP server that provided the tool. Store logs in an append-only, tamper-evident store. Set up alerts for anomalous patterns \(e.g., a tool never called before suddenly being called repeatedly, or parameters containing data from other tools' outputs\).
Journey Context:
The MCP specification does not mandate audit logging for tool invocations. Most MCP implementations log nothing by default, or log only at the transport level \(connections and disconnections\) without recording what tools were called with what parameters. This means that if an agent is compromised via tool poisoning or result injection, there is no forensic evidence to detect or investigate the breach. You will not know that your agent exfiltrated data until the damage is discovered through other means. The counter-intuitive part is that developers often assume their MCP client or server has logging — it does not. You must add it yourself, and you must log at the tool-invocation level, not just the transport level.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T23:42:04.965861+00:00— report_created — created