[BUG] Claude Desktop: Web session mode lacks MCP server access despite configuration
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?
Claude Desktop app can operate in at least two distinct modes with different levels of local resource access:
Web-based containerized sessions - Desktop app acts as viewer/shell for web chat sessions running in Linux containers, WITHOUT access to locally configured MCP servers
Native local sessions - Desktop app runs Claude locally with full access to configured MCP servers
This architectural distinction is not documented and creates user confusion when MCP servers are configured but not accessible.
Impact: Users configure MCP servers expecting them to be available throughout the Desktop app, but sessions opened via web links (e.g., claude.ai/code/session_*) run in containers without MCP access.
What Should Happen?
When using Claude Desktop (native Mac/Windows app), users expect:
- Consistent access to configured local MCP servers across all conversations
- MCP servers to be available regardless of how the session was initiated
- Visual indication if a session has limited capabilities
Error Messages/Logs
the error was logical, not the stuff of error messages.
the issue can be induced by simply copying a session url from Claude Code web app Research Preview, e.g. this
https://claude.ai/code/session_011CUrmcWYFVbNy9V45u41ZK?open_in_browser=1
into a Claude Desktop chat. Desktop Chat then get's 'confused' as to 'where' it is
Observed:
- Claude instance reports NO access to configured MCP servers
- Only built-in tools available (web_search, bash_tool, file operations)
- Claude is running in a Linux container (Ubuntu)
- Available mounts: /mnt/skills, /mnt/user-data
- Missing: All configured local MCP servers
- No visual indication that the session is running in limited "web mode" vs full "native mode"
- Container verified via:
$ uname -a
Linux runsc 4.4.0 #1 SMP Sun Jan 10 15:06:54 PST 2016 x86_64
$ cat /container_info.json
{
"container_name": "container_011CUsHwcTDhN9LYnzx3Z3ba--wiggle--hollow-amused-oily-blank",
"creation_time": 1762462094.7752397
}
Steps to Reproduce
- Configure MCP servers in Claude Desktop via Settings > Developer > Edit Config or install Desktop Extensions
- Verify MCP servers appear in configuration (e.g., Neo4j, n8n, Google Drive, GitHub, etc.)
- Click on a claude.ai/code/session_* link or similar web session URL
- Claude Desktop opens and displays the session in native Mac/Windows UI
- Ask Claude: "What MCP servers do you have access to?"
- Query the environment with: uname -a and cat /container_info.json
Claude Model
Sonnet (default)
Is this a regression?
I don't know
Last Working Version
_No response_
Claude Code Version
2.0.30 (Claude Code)
Platform
Anthropic API
Operating System
macOS
Terminal/Shell
Terminal.app (macOS)
Additional Information
MCP with claude desktop app works
I am regularly using claude-code from
- the terminal (MacOS and Ubuntu for the Nvdia DGX Spark)
- the VS Code Claude Code extension
- the Claude Code web based Research preview (claude.ai/Claude Code)
I am about to light off the cloudflare tunnels to get to the Docker Desktop hosted MCP servers local to the Mac. Was weird when I dropped the url from the new web-based Claude Code Research Preview, to attempt to have Desktop Claude pick up a bit of context, and inadvertently found myself chatting from desktop claude to a container that had no MCP access. hence this ask.
8 Comments
Likewise, I have been experimenting with adding MCP servers to Claude Code online and running into similar blockers.
I've shared some conversation except from my attempts to setup MCP - how I found this ticket actually.
---
If you were expecting to see OAuth-based MCP servers (like GitHub, Slack, etc.), they may need to be configured separately. Would you like me to help you set up additional MCP servers that require OAuth authentication?
\> yes. I have not been able to find instructions for setting up MCP servers in the Claude Code online "research preview" environment. You may not be aware, but this version of claude code is running online in a managed environment where I do not have access to slash commands or bash.
You're absolutely right \- thank you for that context\! Let me look up the official documentation on how to configure MCP servers in the Claude Code online research preview environment, particularly for OAuth-based servers.
TaskMCP setup in web environment
WebFetchhttps://code.claude.com/docs/en/claude\_code\_docs\_map.md
WebFetchhttps://code.claude.com/docs/en/mcp.md
WebFetchhttps://code.claude.com/docs/en/claude-code-on-the-web.md
WebFetchhttps://code.claude.com/docs/en/settings.md
Unable to verify if domain code.claude.com is safe to fetch. This may be due to network restrictions or enterprise security policies blocking claude.ai.
WebSearchClaude Code MCP servers web browser online environment configuration
WebFetchhttps://code.claude.com/docs/en/mcp.md
WebFetchhttps://code.claude.com/docs/en/mcp.md
WebSearch"Claude Code" web environment MCP servers limitations support
WebFetchhttps://docs.claude.com/en/docs/claude-code/mcp
Request failed with status code 503
WebSearchClaude Code "web session" OR "research preview" MCP configuration OAuth support
WebFetchhttps://code.claude.com/docs/en/claude-code-on-the-web.md
WebFetchhttps://github.com/anthropics/claude-code/issues/11146
I found the answer, and unfortunately it's not great news:
MCP Servers in Claude Code Web Environment: Current Status
MCP server configuration is NOT currently supported in the Claude Code online/browser environment. This is a known limitation documented in GitHub Issue \#11146.
Why This Limitation Exists
The online Claude Code runs in isolated Linux containers that don't have access to:
What You Currently Have
Based on my scan, you only have:
What's NOT Available in Web Environment
Your Options
I apologize that I couldn't provide the setup instructions you were looking for \- it turns out this capability simply doesn't exist yet in the online research preview environment. The only MCP server you have access to is the pre-configured codesign server.
---
What this confirms:
The documentation you provided is comprehensive but 100% focused on local installations where users have:
Terminal/command-line access
Ability to run the claude CLI
Filesystem access to edit config files
Access to slash commands like /mcp
None of these are available in the online research preview environment you're using.
Your current situation:
You have only the built-in codesign MCP server (mcp__codesign__sign_file tool), and there's unfortunately no documented way to add additional MCP servers (OAuth-based or otherwise) in the web environment.
I'm sorry this doesn't provide a solution - the documentation confirms that MCP server configuration simply isn't supported in the online version yet. 😔
I think my feature request is similar, so I'm listing it here instead of as a new issue.
----------------------
Feature Request: MCP Server Configuration for Claude Code Research Preview (Web)
Summary
Add the ability to configure custom MCP (Model Context Protocol) servers in Claude Code Research Preview, mirroring the configuration model available in the local CLI.
Problem
Currently, Claude Code Research Preview users cannot add custom MCP servers. The web environment only has access to pre-configured MCP tools (e.g., mcp__codesign__sign_file), limiting extensibility for users who rely on external integrations like PostHog, databases, or custom tooling.
The local Claude Code CLI supports flexible MCP configuration via:
Global config: ~/.claude.json (user-level, applies to all projects)
Project config: .mcp.json (project-specific, shareable with team)
This same flexibility is missing in the web-based Research Preview.
Proposed Solution
Implement MCP server configuration in Claude Code Research Preview with similar scoping:
User-level MCP servers - Configured in user account settings, available across all sessions
Project-level MCP servers - Configured via .mcp.json in the repository root, automatically loaded when working on that project
Configuration format should match the existing CLI schema:
{
"mcpServers": {
"server-name": {
"command": "npx",
"args": ["-y", "package-name"],
"env": {
"API_KEY": "..."
}
}
}
}
Security Considerations
Require explicit user approval before enabling MCP servers
Support secrets management (avoid plaintext API keys in .mcp.json)
Allow users to review/disable MCP servers via /mcp command
Sandboxed execution for MCP server processes
Use Cases
Analytics: PostHog, Mixpanel, Amplitude MCP servers for querying product data
Databases: Direct database access for debugging/development
Custom tooling: Organization-specific internal tools
Third-party APIs: Stripe, GitHub, Slack integrations
Benefits
Feature parity with Claude Code CLI
Enables team collaboration via shared .mcp.json configs
Extends Claude Code's capabilities without Anthropic maintaining every integration
Leverages the growing MCP ecosystem
Would you like me to:
Refine this draft further?
Help you open the issue directly (I can provide the GitHub link)?
Add any specific use cases relevant to your Clarity project?
This issue has been inactive for 30 days. If the issue is still occurring, please comment to let us know. Otherwise, this issue will be automatically closed in 30 days for housekeeping purposes.
Hi, thanks for reporting this — I'm experiencing essentially the same root cause from a slightly different angle.
My scenario:
So it seems like the same underlying issue: the web container / sandbox that powers Code sessions doesn't inherit MCP server connections, regardless of whether you enter through Desktop or the browser.
I've filed a separate feature request specifically for the Claude.ai browser → Code Web path: #23251
Hopefully linking these together helps the team see the full picture. Would love to see this resolved — MCP is such a great ecosystem and having it work consistently across all Claude surfaces would be amazing. 🙏
Would be great to have MCPs on Web sessions. Or at least the regular Claude Connectors that are available on "Chat" web sessions.
This!
I suspect this is the same underlying issue. In voice conversation mode on iOS, I can’t access my MCP servers, despite the same conversation having access to those MCP servers in text mode.
@anthropics team
This issue also affects macOS Claude Code app in native mode (not just web sessions).
Confirmed Environment Mismatch
Setup:
Evidence:
Impact on Local Development
Users configured with
~/.claude/directory structure cannot:~/.claude/CLAUDE.mdconfiguration~/.claude/skills/Desktop Commander workaround was deleted due to repeated misidentification errors.
Critical System Integrity Issue
The fundamental problem: bash_tool routing is environment-agnostic
System prompt claims different environments, but execution target is always the same Linux sandbox.
Result: System cannot self-report its own environment or capabilities accurately.
Reproduction
uname -aRecommendation
Either:
Current state of environment mismatch is unsustainable for local development workflows.