Telegram plugin: inbound message delivery broken (outbound works)

Resolved 💬 2 comments Opened Mar 20, 2026 by jtehrani84 Closed Apr 17, 2026

Bug Report

Description

The Telegram plugin (telegram@claude-plugins-official v0.0.1) can send messages (reply, react, edit_message tools all work), but inbound messages from Telegram are never delivered to the Claude Code session. The MCP notifications/claude/channel notification appears to not reach the client.

Environment

  • macOS (Apple Silicon), Darwin 25.3.0
  • Claude Code with --channels plugin:telegram@claude-plugins-official
  • Bun runtime
  • Plugin MCP server status shows "running" in /plugin

Steps to Reproduce

  1. Install plugin: /plugin install telegram@claude-plugins-official
  2. Configure with bot token via /telegram:configure
  3. Launch: claude --channels plugin:telegram@claude-plugins-official
  4. Pair a user or add to allowFrom in access.json
  5. Send a DM or group message to the bot
  6. Message never appears in the Claude Code session

What Works

  • Outbound reply tool sends messages successfully
  • Outbound react and edit_message tools work
  • Bot token is valid (getMe returns correctly)
  • Bot is polling (getUpdates returns empty, confirming updates are consumed)
  • Plugin MCP server shows as "running"

What Doesn't Work

  • No inbound messages are delivered to the session (DM or group)
  • Tested with both requireMention: true and false
  • Tested with privacy mode enabled and disabled via BotFather
  • Confirmed can_read_all_group_messages: true after disabling privacy mode
  • Multiple session restarts and /reload-plugins did not fix it

access.json (sanitized)

{
  "dmPolicy": "allowlist",
  "allowFrom": ["<user_id>"],
  "groups": {
    "<group_id>": {
      "requireMention": false,
      "allowFrom": []
    }
  },
  "pending": {}
}

Suspected Cause

The bot's handleInbound() function calls mcp.notification() with method notifications/claude/channel, but this notification never reaches the Claude Code client. The MCP stdio transport between the bot process and Claude Code may not be forwarding notifications correctly.

View original on GitHub ↗

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