Problem
Found by Copilot on #2641 while documenting mcpdo's environment variables (#2640). The one-shot CLI and the TUI route connections through an outbound proxy when HTTPS_PROXY/HTTP_PROXY is set, honouring NO_PROXY. mcpdo does not.
The CLI and TUI install fetch: createProxyFetch() in their InspectorClientEnvironment (clients/cli/src/cli.ts:177, clients/tui/src/App.tsx:389). mcpdo's two environments set only transport (clients/mcpdo/src/connection/authorize.ts:56–58, clients/mcpdo/src/daemon/connections.ts:817–819). InspectorClient then builds its fetch chain on this.fetchFn ?? fetch (core/mcp/inspectorClient.ts:846), so the transport is always handed a defined fetch and its createProxyFetch() fallback (core/mcp/node/transport.ts:72) is never reached. The CLI's stored-auth relogin helper builds over createProxyFetch() ?? fetch too; check mcpdo's auth/clear / --relogin path for the same gap.
Effect
Behind a corporate proxy, mcpdo cannot reach remote HTTP/SSE servers or their OAuth endpoints, while mcp-inspector --cli can. docs/environment-variables.md now lists the proxy variables as web/CLI/TUI only, which is accurate for 2.10.0.
Expected
mcpdo's connection and authorization environments install createProxyFetch() like the CLI and TUI, with a test showing a configured proxy is used and NO_PROXY is honoured. Then add mcpdo back to the proxy rows in docs/environment-variables.md.
Priority
Medium (rubric total 7): Severity 3 (mcpdo unusable behind a proxy; the one-shot CLI is the workaround), Urgency 2, +1 bug, +1 milestoned.
Problem
Found by Copilot on #2641 while documenting mcpdo's environment variables (#2640). The one-shot CLI and the TUI route connections through an outbound proxy when
HTTPS_PROXY/HTTP_PROXYis set, honouringNO_PROXY. mcpdo does not.The CLI and TUI install
fetch: createProxyFetch()in theirInspectorClientEnvironment(clients/cli/src/cli.ts:177,clients/tui/src/App.tsx:389). mcpdo's two environments set onlytransport(clients/mcpdo/src/connection/authorize.ts:56–58,clients/mcpdo/src/daemon/connections.ts:817–819).InspectorClientthen builds its fetch chain onthis.fetchFn ?? fetch(core/mcp/inspectorClient.ts:846), so the transport is always handed a defined fetch and itscreateProxyFetch()fallback (core/mcp/node/transport.ts:72) is never reached. The CLI's stored-auth relogin helper builds overcreateProxyFetch() ?? fetchtoo; check mcpdo'sauth/clear/--reloginpath for the same gap.Effect
Behind a corporate proxy, mcpdo cannot reach remote HTTP/SSE servers or their OAuth endpoints, while
mcp-inspector --clican.docs/environment-variables.mdnow lists the proxy variables as web/CLI/TUI only, which is accurate for 2.10.0.Expected
mcpdo's connection and authorization environments install
createProxyFetch()like the CLI and TUI, with a test showing a configured proxy is used andNO_PROXYis honoured. Then add mcpdo back to the proxy rows indocs/environment-variables.md.Priority
Medium (rubric total 7): Severity 3 (mcpdo unusable behind a proxy; the one-shot CLI is the workaround), Urgency 2, +1
bug, +1 milestoned.