[BUG] Cowork mode: WebFetch egress proxy blocks most websites (Facebook, Netlify, etc.) AND Chrome extension fails to connect — no fallback path to view any web content

Resolved 💬 3 comments Opened Mar 16, 2026 by fassai Closed Mar 20, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

<h3 class="text-text-100 mt-2 -mb-1 text-base font-bold">Bug Description</h3>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]">Cowork mode's WebFetch tool is blocked by the egress proxy on <strong>most websites</strong> — not just niche domains, but major platforms like Facebook, Netlify app deployments, and others. The <code class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]">EGRESS_BLOCKED</code> error fires broadly, making Cowork unable to read web content that both <strong>Claude Chat</strong> and <strong>Claude Code CLI</strong> handle without issue.</p>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]">The natural fallback — <strong>Claude in Chrome</strong> browser extension — also fails to connect in Cowork. The setup prompt appears but the connection never establishes, returning <code class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]">"Claude in Chrome is not connected"</code>.</p>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>These two independent failures combine to make Cowork effectively unable to access the web at all.</strong></p>
<h3 class="text-text-100 mt-2 -mb-1 text-base font-bold">Tested Examples</h3>
<div class="overflow-x-auto w-full px-2 mb-6">
URL | WebFetch Result | Chrome Extension
-- | -- | --
facebook.com | ❌ EGRESS_BLOCKED | ❌ Not connected
*.netlify.app (user-deployed sites) | ❌ EGRESS_BLOCKED | ❌ Not connected
(likely many more) | ❌ EGRESS_BLOCKED | ❌ Not connected

</div>
<h3 class="text-text-100 mt-2 -mb-1 text-base font-bold">Steps to Reproduce</h3>
<ol class="[li_&amp;]:mb-0 [li_&amp;]:mt-1 [li_&amp;]:gap-1 [&amp;:not(:last-child)_ul]:pb-1 [&amp;:not(:last-child)_ol]:pb-1 list-decimal flex flex-col gap-1 pl-8 mb-3">
<li class="whitespace-normal break-words pl-2">Open Cowork mode in Claude Desktop</li>
<li class="whitespace-normal break-words pl-2">Ask Claude to fetch any commonly used website (Facebook, a Netlify-deployed site, etc.)</li>
<li class="whitespace-normal break-words pl-2">WebFetch returns <code class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]">EGRESS_BLOCKED</code> error: <code class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]">"Access to [domain] is blocked by the network egress proxy."</code></li>
<li class="whitespace-normal break-words pl-2">Ask Claude to try via Chrome extension instead</li>
<li class="whitespace-normal break-words pl-2">Chrome extension returns <code class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]">"Claude in Chrome is not connected"</code></li>
<li class="whitespace-normal break-words pl-2">User is completely stuck — no path to view web content</li>
</ol>
<h3 class="text-text-100 mt-2 -mb-1 text-base font-bold">Expected Behavior</h3>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]">Cowork should be able to access publicly available websites, at minimum matching the capability of Claude Chat (which fetches URLs with no restrictions). The Chrome extension should connect reliably as a fallback, matching Claude Code CLI behavior.</p>
<h3 class="text-text-100 mt-2 -mb-1 text-base font-bold">Environment</h3>
<ul class="[li_&amp;]:mb-0 [li_&amp;]:mt-1 [li_&amp;]:gap-1 [&amp;:not(:last-child)_ul]:pb-1 [&amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3">
<li class="whitespace-normal break-words pl-2"><strong>Claude Desktop:</strong> Latest version (March 2026)</li>
<li class="whitespace-normal break-words pl-2"><strong>Plan:</strong> Max</li>
<li class="whitespace-normal break-words pl-2"><strong>OS:</strong> (fill in your OS)</li>
<li class="whitespace-normal break-words pl-2"><strong>Chrome:</strong> (fill in your version — go to chrome://version)</li>
</ul>
<h3 class="text-text-100 mt-2 -mb-1 text-base font-bold">Impact</h3>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]">This is a <strong>fundamental capability gap</strong> that makes Cowork the least capable Claude product for any task involving web content, despite being positioned as the most feature-rich.</p>
<h3 class="text-text-100 mt-2 -mb-1 text-base font-bold">Suggested Fix</h3>
<ol class="[li_&amp;]:mb-0 [li_&amp;]:mt-1 [li_&amp;]:gap-1 [&amp;:not(:last-child)_ul]:pb-1 [&amp;:not(:last-child)_ol]:pb-1 list-decimal flex flex-col gap-1 pl-8 mb-3">
<li class="whitespace-normal break-words pl-2"><strong>Expand the egress proxy allowlist</strong> — The current blocklist is too aggressive. Publicly accessible websites (especially major platforms and user-deployed sites) should not be blocked. Match the URL fetching capability of Claude Chat.</li>
<li class="whitespace-normal break-words pl-2"><strong>Fix Chrome extension connection in Cowork</strong> — The Claude in Chrome extension connects fine via Claude Code CLI (<code class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]">claude --chrome</code>) but fails in Cowork. These should use the same connection path.</li>
<li class="whitespace-normal break-words pl-2"><strong>At minimum, provide a clear error message</strong> — When WebFetch is blocked AND Chrome is unavailable, tell the user explicitly instead of failing silently on Chrome.</li>
</ol>
<hr class="border-border-200 border-t-0.5 my-3 mx-1.5">
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><em>Reported from Cowork session, March 16, 2026. Tested live with multiple domains.</em></p>

What Should Happen?

Cowork should be able to access publicly available websites. At minimum it should match Claude Chat's URL fetching capability. The Chrome extension should connect reliably as a fallback, matching Claude Code CLI behavior with claude --chrome.

Error Messages/Logs

WebFetch error:
{"error_type":"EGRESS_BLOCKED","domain":"animated-dusk-d9080a.netlify.app","message":"Access to animated-dusk-d9080a.netlify.app is blocked by the network egress proxy."}

Chrome extension error:
"Claude in Chrome is not connected. The user was prompted to set up the Chrome extension but dismissed the dialog."

Steps to Reproduce

  1. Open Cowork mode in Claude Desktop
  2. Ask Claude to fetch any website (e.g. https://animated-dusk-d9080a.netlify.app/ or https://facebook.com)
  3. WebFetch returns EGRESS_BLOCKED
  4. Ask Claude to try via Chrome extension instead
  5. Claude in Chrome returns "not connected" — setup prompt appears but connection never establishes
  6. No alternative path exists to view any web content

Claude Model

Opus

Is this a regression?

No, this never worked

Last Working Version

_No response_

Claude Code Version

2.1.45 (Claude Code)

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Terminal.app (macOS)

Additional Information

_No response_

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗