[BUG] Cloud MCP connectors bulk-lose authentication simultaneously with no local recovery path

Resolved 💬 3 comments Opened Apr 13, 2026 by skiley22 Closed Apr 17, 2026

Description

Claude.ai cloud MCP connectors (claude.ai *) periodically lose authentication in bulk — all connectors drop to "Needs authentication" at the same moment, not individually over time. There is no CLI mechanism to re-authenticate or restore them.

Evidence of bulk invalidation

The local mcp-needs-auth-cache.json shows 15 connectors all flagged within ~500ms of each other:

{
  "claude.ai Canva": {"timestamp": 1776090864691},
  "claude.ai Cloudflare Logpush": {"timestamp": 1776090864720},
  "claude.ai monday.com": {"timestamp": 1776090864748},
  "claude.ai Gmail": {"timestamp": 1776090864766},
  "claude.ai Microsoft 365": {"timestamp": 1776090864769},
  "claude.ai Notion": {"timestamp": 1776090864900}
}

This pattern points to a single upstream event (session rotation, token refresh failure) rather than individual provider token expiry.

Incomplete local tracking

claudeAiMcpEverConnected in .claude.json only tracks 5 of 21 cloud connectors:

["claude.ai Slack", "claude.ai Cloudflare Docs", "claude.ai Atlassian", "claude.ai Mermaid Chart", "claude.ai Sentry"]

It's unclear whether this incomplete cache contributes to connectors failing to recover.

No recovery path from CLI

Cloud connectors are not stored in local config (mcpServers in .claude.json / settings.json). When they lose auth or disappear entirely, there is no CLI command to re-authenticate, re-sync, or restore them. The only option is to re-add them through the claude.ai web UI one by one.

Expected behavior

  1. Cloud connector auth should be resilient — individual provider token expiry should be handled by silent refresh, and a single upstream event should not invalidate all connectors simultaneously.
  2. claudeAiMcpEverConnected should be a complete list, or not exist at all — an incomplete cache is misleading.
  3. There should be a CLI recovery path (e.g., claude mcp sync or claude mcp reauth <name>) so users don't have to leave the terminal.

Environment

  • Claude Code version: latest
  • Platform: macOS (Darwin 25.4.0)
  • 21 cloud connectors configured via claude.ai account

Related issues

  • #29415 — GitHub connector missing from MCP list despite showing in settings
  • #31618 — Disconnected cloud connectors still trigger browser OAuth prompt on session start
  • #41193 — Ghost claude.ai MCP server blocks plugin server despite not being configured

View original on GitHub ↗

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