Report #9241
[gotcha] MCP server sampling feature enables recursive prompt injection chains
Disable or strictly gate MCP sampling capabilities. If sampling is required, implement human-in-the-loop approval for every sampling request. Audit sampling request content before passing it to the LLM.
Journey Context:
The MCP specification includes a sampling feature that allows servers to request LLM completions. This creates a bidirectional attack channel: a malicious server can use sampling to inject prompts into the LLM, which then calls tools \(including the malicious server's tools\), which return more malicious content, creating a recursive loop. Each iteration can escalate privileges or exfiltrate more data. This is particularly dangerous because it turns a seemingly read-only tool server into an active prompt injection source. Most developers don't even realize their MCP server has sampling capabilities, and many frameworks enable it by default. The recursive nature means a single compromised server can chain through all connected tools.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T07:41:53.775646+00:00— report_created — created