Last reviewed
Correct answer: B. A page the developer visits can reach the server through DNS rebinding, which is what the Origin check prevents.
Explanation
The principle — A local HTTP server is a network service, and the browser on the same machine is part of its threat model.
Why the key is correct — The specification names both measures and the attack they exist for. Servers MUST validate the Origin header on all incoming connections to prevent DNS rebinding attacks, and when running locally, servers SHOULD bind only to localhost (127.0.0.1) rather than all network interfaces (0.0.0.0). Skipping the first and widening the second removes both layers at once, and the consequence is stated outright: without these protections, attackers could use DNS rebinding to interact with local MCP servers from remote websites.
Why the others are wrong — Localhost is not out of reach of a page in the developer's own browser. Authentication is required as well, not instead. And loopback binding is enough for a host on the same machine.
Remember this — Validate Origin, bind narrowly, and treat your own browser as untrusted.
Sources — MCP first-party documentation.
Sources
“Servers MUST validate the Origin header on all incoming connections to prevent DNS rebinding attacks.”
“When running locally, servers SHOULD bind only to localhost (127.0.0.1) rather than all network interfaces (0.0.0.0).”
“Without these protections, attackers could use DNS rebinding to interact with local MCP servers from remote websites.”
Practise 10 questions on this topic
Take MCP Fundamentals — Timed Test 1 (10 questions) — scored instantly, explanation for every question, no login.