Report #12637
[gotcha] Exposing MCP servers over HTTP without mutual TLS or authentication
Bind MCP servers to localhost \(127.0.0.1\) by default. If network exposure is required, enforce mutual TLS \(mTLS\) or strict token-based authentication on every request.
Journey Context:
Developers run MCP servers on 0.0.0.0 for ease of access in containerized environments. Because MCP lacks built-in transport encryption in some standard implementations \(like stdio vs SSE\), an exposed HTTP SSE server without auth allows any network attacker to invoke tools, read local files, or execute commands as the server's user.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T16:39:01.949879+00:00— report_created — created