Telegram plugin: inbound MCP channel notifications not surfaced on Windows

Resolved 💬 3 comments Opened Apr 18, 2026 by narra121 Closed Apr 22, 2026

Bug Description

The Telegram plugin's inbound messages are not being surfaced in the Claude Code conversation on Windows. The bot correctly receives Telegram messages and sends MCP notifications, but Claude Code silently drops them.

Environment

  • Claude Code: 2.1.114
  • OS: Windows 11 (10.0.26200)
  • Bun: 1.3.12
  • Telegram plugin: 0.0.6
  • Tested in: VS Code terminal and standalone Windows Terminal

What works

  • Plugin loads, MCP tools are available (reply, react, edit_message, download_attachment)
  • Outbound: reply tool successfully sends messages to Telegram
  • Bot polls Telegram correctly (bot.start() with grammY)
  • Bot receives messages (typing indicator appears in Telegram)
  • gate() returns deliver for allowlisted user
  • mcp.notification() with method notifications/claude/channel resolves successfully (no error)

What doesn't work

  • Inbound MCP notifications (notifications/claude/channel) never appear as <channel> tags in the conversation
  • No error is thrown — the notification is silently dropped by Claude Code

Debugging done

Added file-based debug logging to server.ts to trace the full message path:

[2026-04-18T09:28:26.111Z] polling as @Narrapbot
[2026-04-18T09:28:32.776Z] message:text from <user_id>: Hey
[2026-04-18T09:28:32.780Z] gate result: deliver
[2026-04-18T09:28:32.783Z] sending mcp notification for: Hey
[2026-04-18T09:28:32.785Z] mcp notification sent successfully

The notification is sent without errors. The issue is on the Claude Code side — it does not process or surface the notification.

Steps to reproduce

  1. Install Telegram plugin on Windows
  2. Configure bot token and allowlist a user
  3. Reload plugins — MCP tools appear
  4. Send a message from Telegram to the bot
  5. Bot shows typing indicator (confirming receipt)
  6. No <channel> message appears in Claude Code conversation

Expected behavior

Messages from Telegram should appear as <channel source="telegram" ...> tags in the conversation, as documented in the plugin's MCP server instructions.

View original on GitHub ↗

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