Slack MCP OAuth server silently drops from available MCPs when token expires
Summary
The Slack MCP server (provided by the slack@claude-plugins-official plugin) intermittently disappears from the list of available MCP tools during a session. The only reliable workaround is logging out and logging back in, which forces a fresh OAuth flow.
Expected behavior
When the Slack MCP OAuth token expires, Claude Code should either:
- Auto-refresh the token silently (as documented), or
- Prompt for re-authentication
Actual behavior
The Slack MCP server silently drops off the available MCP list. No error is shown, no re-auth prompt appears — the Slack tools just stop being listed. Logging out and back in resolves the issue until the token expires again.
Reproduction steps
- Install the
slack@claude-plugins-officialplugin - Authenticate via OAuth when prompted
- Use Slack MCP tools normally
- After some time (hours/days), the Slack MCP tools disappear from the available tools list
- Logout and login to Claude Code — Slack MCP reappears
Environment
- Claude Code version: 2.1.92 (updated to 2.1.109, not yet confirmed if resolved)
- OS: macOS 26.3.1 (arm64)
- Plugin:
slack@claude-plugins-officialv1.0.0 - MCP config: OAuth HTTP server at
https://mcp.slack.com/mcp
Additional context
The Slack plugin's .mcp.json configures an OAuth-based HTTP MCP server. The token refresh mechanism appears to fail silently rather than triggering re-authentication. Other OAuth MCP plugins (Asana, Atlassian) may also be affected but I've only observed it consistently with Slack.
This issue has 5 comments on GitHub. Read the full discussion on GitHub ↗