Report #75635
[gotcha] MCP tool calls leave no audit trail, making compromised agents undetectable and unattributable
Log every tool invocation with timestamp, tool name, parameter hash \(or full params per policy\), server identity, and response status to an external immutable log. Ship logs to a SIEM the LLM cannot access or modify. Alert on anomalous patterns: unexpected tool calls, calls to new servers, parameter sizes exceeding baselines, calls outside business hours, or tool-call sequences that deviate from established norms.
Journey Context:
MCP does not mandate logging. Most implementations log to stdout at best, which rolls over and disappears. When an agent is compromised via tool poisoning, there is no forensic trail. You cannot answer: when did the agent start exfiltrating data, which tool was used, what was sent? The counter-intuitive part: the agent's own conversation log is NOT sufficient forensic evidence, because prompt injection can manipulate the LLM into omitting or misrepresenting tool calls in its visible reasoning. You need independent, client-side telemetry that the LLM cannot influence. The logging must happen in the transport layer, not in the model's output.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T09:32:46.305758+00:00— report_created — created