Channel plugin MCP (plugin:telegram) fails to spawn at session start after official-marketplace refresh; /mcp Reconnect fixes it

Status Open
Reported on v2.1.212
Maintainer reply None cached
Activity 2 comments · opened Jul 18, 2026

Summary

After the official plugin marketplace (claude-plugins-official) refreshes on disk, the channel plugin MCP server (plugin:telegram:telegram) fails to spawn at session start — or takes minutes to come up. A manual /mcp → select server → Reconnect revives it instantly every time. Observed twice in one day, each occurrence starting immediately after a marketplace refresh.

Environment

  • macOS (Apple Silicon), Claude Code 2.1.212 and 2.1.214 (native install, ~/.local/share/claude/versions/…)
  • Plugin: telegram@claude-plugins-official 0.0.6 (bun-based channel plugin)
  • Sessions started headless in tmux with --channels plugin:telegram@claude-plugins-official

Symptom

  • Session boots normally, banner shows "Channels (experimental) messages from plugin:telegram@claude-plugins-official inject directly in this session".
  • The plugin MCP process (bun run --cwd <plugin> … start) is never spawned — no child process, and notably no per-session log file is created under ~/Library/Caches/claude-cli-nodejs/<project>/mcp-logs-plugin-telegram-telegram/ (normally a file appears with "Starting connection…"). The failure appears to happen before the connection attempt is logged.
  • /mcp shows plugin:telegram:telegram · ✘ failed.
  • Model-independent (reproduced with two different --model values) and version-independent (reproduced on both 2.1.212 and 2.1.214).

Correlation

Two occurrences, both starting immediately after the marketplace metadata on disk changed:

  1. First occurrence began ~17:04Z 2026-07-17; a refresh of claude-plugins-official landed 17:04:48Z. Sessions started 16:17–16:21Z the same morning connected fine ("Successfully connected in 195ms") on the same binary.
  2. Second occurrence began ~01:26Z 2026-07-18, right after ~/.claude/plugins/marketplaces/claude-plugins-official was (re-)cloned at 01:26Z (officialMarketplaceAutoInstalled flipped true; the telegram plugin now lives under external_plugins/ in the new snapshot, still version 0.0.6, .mcp.json unchanged). The still-running sessions from before the refresh kept working; every session started after it came up with the failed plugin MCP.

Workarounds found

  • /mcp → select the failed server → Reconnect: works instantly, every time.
  • Waiting also (sometimes) works: one session spawned the plugin ~3 minutes after boot.
  • Restarting the CLI session does not help — fresh sessions come up in the same failed state, which is nasty for unattended/headless bots whose supervision reacts to a dead channel by restarting the session.

Impact

Headless channel-plugin sessions (Telegram bots) come up deaf after any marketplace refresh, and restart-based supervision makes it worse. A retry of the initial plugin MCP spawn (the same code path Reconnect uses) would fix it.

Aside

While debugging we also noticed the freshly installed 2.1.214 binary re-points the ~/.local/bin/claude symlink to itself when an older pinned version is launched — intentional self-repair presumably, but it makes version-pinning via the symlink impossible; mentioning in case it's not intended.

View original on GitHub ↗

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