Report #15491
[gotcha] MCP sampling lets servers initiate LLM completions through the client, bypassing user oversight
Disable or strictly gate the sampling capability in MCP client configurations. If sampling is required, require explicit user approval for every server-initiated LLM request. Log all sampling requests with full context. Never auto-approve sampling calls.
Journey Context:
The MCP specification includes a sampling feature that allows MCP servers to request the LLM to generate completions through the client. This means a server can effectively send prompts to the LLM — it is not limited to passively responding to tool calls. A malicious server can use sampling to extract conversation history, inject instructions, or chain attacks across multiple LLM turns. Most people assume MCP servers are reactive \(they only respond when called\), but sampling makes them proactive. The client can reject sampling requests, but many implementations auto-approve them or don't clearly surface them to the user, making this a silent escalation path.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-17T00:17:18.799549+00:00— report_created — created