Telegram plugin: inbound notifications not reaching session

Resolved 💬 3 comments Opened Apr 3, 2026 by orress7142 Closed May 31, 2026

Description

The Telegram channel plugin (v0.0.4) receives messages from Telegram (confirmed via getUpdates API), but mcp.notification() calls from the plugin never surface as <channel source="telegram"> tags in the Claude Code session.

Outbound works fine — calling the reply tool successfully sends messages to Telegram.

Environment

  • Claude Code: v2.1.91
  • Plugin: telegram@claude-plugins-official v0.0.4
  • Platform: macOS (Darwin 25.3.0)
  • Runtime: bun

Steps to reproduce

  1. Install telegram plugin (claude plugin install telegram)
  2. Configure bot token in ~/.claude/channels/telegram/.env
  3. Add user to allowFrom in access.json
  4. Start a new Claude Code session
  5. Confirm plugin process is running (ps aux | grep bun.*telegram)
  6. Confirm bot token works (curl .../getMe returns ok)
  7. Confirm user is in allowlist
  8. Send a message to the bot from Telegram
  9. Message never appears in the Claude Code session

Diagnostic details

  • getUpdates API confirms messages are queued/received by Telegram
  • getUpdates returns 409 when plugin is running (confirming plugin IS polling)
  • reply tool works (outbound direction is fine)
  • Plugin process runs without visible errors
  • No inbox directory is created in ~/.claude/channels/telegram/
  • Killing and restarting the plugin causes MCP server disconnect; Claude Code does not always reconnect

Expected behavior

Messages sent to the bot should appear in the Claude Code session as <channel source="telegram"> notifications.

🤖 Generated with Claude Code

View original on GitHub ↗

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