Telegram channel plugin: MCP notifications not delivered on Windows

Resolved 💬 3 comments Opened Mar 24, 2026 by cargaladrillos Closed Mar 27, 2026

Environment

  • Platform: Windows 11 Pro 10.0.26200
  • Claude Code: v2.1.81 (latest)
  • Plugin: telegram@claude-plugins-official v0.0.2
  • Runtime: bun (via ~/.bun/bin/bun)

Description

The Telegram channel plugin's MCP server starts correctly and polls for updates, but notifications/claude/channel notifications are never delivered to the conversation. Outbound tools (reply, react) work fine.

Symptoms

  • Bot token valid (getMe returns OK)
  • Bot can send messages (the reply MCP tool works — messages arrive in Telegram)
  • Bot receives messages (Telegram client shows "typing" indicator, confirming sendChatAction fires)
  • MCP server is actively polling (getUpdates returns 409 Conflict when called externally)
  • The MCP notification (notifications/claude/channel) is never delivered to the conversation
  • No error logs accessible

Steps to Reproduce

  1. Install and configure the Telegram plugin (telegram@claude-plugins-official)
  2. Set bot token in ~/.claude/channels/telegram/.env
  3. Add user ID to allowlist in ~/.claude/channels/telegram/access.json
  4. Open a new Claude Code session
  5. Send a DM to the bot from Telegram
  6. Bot shows "typing" indicator but message never appears in the Claude Code conversation
  7. Using the reply tool to send a message back to Telegram works — confirming the MCP server is running and connected

Diagnosis

The MCP server receives the inbound message, passes the gate() check (user is in allowlist), fires sendChatAction("typing"), and calls mcp.notification({ method: 'notifications/claude/channel', params: { ... } }). The notification is sent over stdio transport but Claude Code does not surface it in the conversation.

This was verified by:

  • Stopping the MCP server's polling (confirmed no 409) and manually calling getUpdates via curl — messages from the user were received successfully
  • Reloading plugins (/reload-plugins) — MCP server restarts and resumes polling, but notifications still don't arrive

Expected Behavior

Messages sent to the Telegram bot should appear in the Claude Code conversation as <channel source="telegram" ...> blocks.

Workaround

None found. The channel is effectively one-way (outbound only).

View original on GitHub ↗

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