claude.ai connectors never load in interactive /mcp; only visible to child processes that inherit an active session's environment

Resolved 💬 1 comment Opened Jun 18, 2026 by mradamh Closed Jun 18, 2026

claude.ai connectors never load in interactive /mcp; only visible to child processes that inherit an active session's environment

Summary

My claude.ai (Anthropic-managed org) connectors are effectively unavailable in Claude Code. The behavior depends entirely on how you look:

  • Interactive /mcp (in a running session): shows zero claude.ai connectors. The model has no connector tools.
  • claude mcp list in a fresh terminal (a normal login shell, not spawned by Claude): shows zero claude.ai connectors — only locally-configured stdio servers.
  • claude mcp list spawned as a child process of an active session (inherits CLAUDECODE=1 / CLAUDE_CODE_SESSION_ID): shows all ~28 claude.ai connectors, several reporting ✔ Connected.

So the connector set is only reachable from within an active session's process tree, yet the interactive session's own /mcp still shows none of them. Running /login populates /mcp for that one session; everything reverts on the next session.

Net effect: connector tools are never available to the model in a normal session without manually running /login first.

Environment

  • Claude Code: 2.1.181 (native install, auto-updates off)
  • OS: macOS (Darwin 25.5.0)
  • Auth: enterprise / org account; ~28 claude.ai-synced (Anthropic-managed) connectors
  • Verified the interactive session and the in-session claude mcp list resolve to the same binary: ~/.local/bin/claudeversions/2.1.181, and the session's CLAUDE_CODE_EXECPATH is also versions/2.1.181.

Steps to reproduce

  1. Sign in to an org account with claude.ai connectors configured.
  2. Fresh terminal, run claude mcp list. → Only locally-configured servers appear; no claude.ai connectors.
  3. Start an interactive Claude Code session, run /mcp. → No claude.ai connectors listed.
  4. From inside that session, shell out and run claude mcp list again (so it inherits CLAUDECODE / CLAUDE_CODE_SESSION_ID). → All ~28 claude.ai connectors appear, several ✔ Connected.
  5. Ask the model to use a connector tool. → Reports the connector/tools are not available.
  6. Run /login. → Connectors now appear in /mcp and their tools become usable.
  7. Start a new session. → Back to step 3: /mcp empty again.

Expected behavior

A normal interactive session (and a normal claude mcp list) should load and display the claude.ai connectors, so their tools are available to the model without re-running /login every session.

Actual behavior

Interactive /mcp lists zero claude.ai connectors and the model has no connector tools. They become visible only to a child process that inherits a live session's environment, or in /mcp immediately after /login — and never persist to the next session.

Evidence

claude mcp list as a child of an active session — all ~28 claude.ai connectors are listed:

claude.ai Atlassian: <url> - ...
claude.ai Slack: <url> - ...
claude.ai BetterUp MCP: <url> - ...
... (~28 claude.ai connectors total)
<local stdio server> - ✔ Connected

The same claude mcp list in a fresh terminal lists only the local stdio server — none of the claude.ai connectors. And the interactive /mcp of the very session whose child process showed all ~28 shows none.

Per-connector logs confirm the connectors are reachable. ~/Library/Caches/claude-cli-nodejs/<project>/mcp-logs-claude-ai-<name>/*.jsonl show connections via the proxy https://mcp-proxy.anthropic.com/v1/mcp/<mcpsrv_id>, e.g.:

{"debug":"Initializing claude.ai proxy transport for server mcpsrv_..."}
{"debug":"Using claude.ai proxy at https://mcp-proxy.anthropic.com/v1/mcp/mcpsrv_..."}
{"debug":"Successfully connected (transport: claudeai-proxy) in 954ms"}
{"debug":"Connection established with capabilities: {\"hasTools\":true,...}"}

So the transport layer works; the gap is that the interactive session does not surface these connectors in /mcp, and a normal (non-inherited) invocation doesn't see them at all.

The model's own tool list confirms it: in a session, the only available MCP tools are from the locally-configured stdio server — zero tools from any claude.ai connector, including ones claude mcp list reports as ✔ Connected (e.g. Slack). The connectors contribute no usable tools to the session at all.

Ruled out (during local debugging)

  • Local credential persistence — connector OAuth tokens are held server-side by the proxy, not locally; not the cause.
  • Account auth — account token is valid; chat works throughout.
  • Workspace trust — reproduces in both hasTrustDialogAccepted: true and false projects.
  • Stale/duplicate versions — interactive session and claude mcp list both run the identical 2.1.181 binary.
  • Stale daemon / needs-auth cache / full machine restart — none resolve it.

Impact

claude.ai connectors are effectively unusable in normal interactive sessions — the model has no connector tools unless the user manually /logins at the start of every session.

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗