[BUG] Cloud (claude.ai) MCP connectors: /login or token refresh in one session invalidates connectors in all other concurrent sessions
What happened
The claude.ai cloud MCP connectors (mcp__claude_ai_Gmail__*, mcp__claude_ai_Google_Calendar__*, mcp__claude_ai_Google_Drive__*, mcp__claude_ai_Notion__*, etc.) share a single global OAuth credential across all running Claude Code sessions. Because these connectors use rotating (single-use) refresh tokens, a /login or automatic token refresh in one session rewrites the shared credential on disk and invalidates the token that other live sessions are still holding. The other sessions then lose all cloud connectors.
Net effect: only the most recently /login-ed session has working connectors at any time. Concurrent sessions cannot each keep the connectors alive — authenticating in one knocks them down in the others. There is no per-session credential isolation.
Steps to reproduce
- Session A (already open): cloud connectors are down.
- Open Session B (fresh) → run
/login→ connectors appear and work in B. - Go back to Session A →
/mcpshows connectors still down → run/loginin A → connectors come up in A. - Go back to Session B → connectors are now down.
So authenticating in one session brings its own connectors up but knocks them down in the session that was previously authenticated. They cannot coexist across concurrent sessions.
Expected behavior
Multiple concurrent Claude Code sessions should each maintain working cloud connectors. A /login or token refresh in one session should not tear down connectors in the others — e.g. via per-session credential handles, or a shared refresh coordinator that re-broadcasts the rotated token to all live sessions.
Additional notes
/mcp reconnect <name>does not work for these connectors (they aren't user-configured servers) — it returnsMCP server '<name>' not found. Only the no-arg/mcpmenu can re-auth them.- Upgrading to 2.1.207 improved single-session recovery after a failed refresh, but the multi-session collision persists.
- Related but distinct: #48275 (stale connectors in
claude mcp list), #31618 (OAuth prompt on every session start).
Environment
- Claude Code: 2.1.207 (native install,
~/.local/) - macOS 26.5.1 (build 25F80)
- Auth: claude.ai subscription (
/login) - Connectors affected: Gmail, Google Calendar, Google Drive, Notion, ms365, Gamma