Skip to content

Commit a572b95

Browse files
committed
docs(e2e): describe MCP bridge NAT tolerance
Signed-off-by: Kris Hicks <khicks@nvidia.com>
1 parent bb1d8ef commit a572b95

1 file changed

Lines changed: 7 additions & 5 deletions

File tree

e2e/mcp-conformance/README.md

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,13 @@ OpenShell e2e gateway and one reusable client sandbox serve the whole scenario
1919
list. The runner deliberately has no gateway credentials; keeping the privileged
2020
client launch on `host-bridge.py` is the trust boundary. The harness gives the
2121
runner a per-run bridge capability and gives the bridge the runner container IP.
22-
The bridge only accepts requests with that capability from that source IP, only
23-
renders server URLs whose host is the runner container IP, only forwards the MCP
24-
conformance scenario environment allowlist, and starts the client wrapper with a
25-
small host environment allowlist instead of inheriting token-bearing host
26-
environment variables.
22+
The bridge only accepts requests with that capability, only renders server URLs
23+
whose host is the runner container IP, only forwards the MCP conformance
24+
scenario environment allowlist, and starts the client wrapper with a small host
25+
environment allowlist instead of inheriting token-bearing host environment
26+
variables. It does not use the HTTP peer source address as the runner identity,
27+
because Docker NAT can make legitimate callbacks appear to come from a gateway
28+
address.
2729

2830
The upstream runner reports its test server URL as `localhost`. The runner
2931
container has an ordinary, externally-routable address on the e2e network, so

0 commit comments

Comments
 (0)