[BUG] **Telegram plugin: inbound channel notifications silently dropped**
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
Telegram plugin: inbound channel notifications silently dropped
- Claude Code v2.1.81, macOS, telegram plugin v0.0.1
- MCP SDK 1.27.1, stdio transport
- tengu_harbor: true, telegram in tengu_harbor_ledger
Outbound works (reply tool sends messages to Telegram fine).
Inbound broken: bot receives messages, reacts with ack emoji,
sends notifications/claude/channel via mcp.notification() —
promise resolves successfully, but nothing surfaces in conversation.
Debug log confirms notification payload is valid JSON and
resolves without error. Process tree intact (bun → claude).
No zombie processes. Reinstall didn't help. --no-profile didn't help.
Worked ~24h ago on same version.
What Should Happen?
⏺ Here's the expected behavior to include:
Expected behavior:
When a user sends a message to the bot on Telegram:
- MCP server receives the message via getUpdates polling
- MCP server sends a notifications/claude/channel JSON-RPC
notification over stdio to Claude Code
- Claude Code should surface this as a <channel source="telegram"
chat_id="..." message_id="..." user="..." ts="..."> tag
in the active conversation
- The model sees the message and responds using the reply tool
Steps 1-2 work correctly (verified with debug logging).
Step 3 fails silently — the notification is received on the
stdio pipe but never surfaced to the conversation.
Error Messages/Logs
Steps to Reproduce
- Install telegram plugin: `claude plugins install
telegram@claude-plugins-official`
- Configure with
/telegram:configure(set bot token, pair user) - Start a Claude Code session
- Send a message to the bot on Telegram
- Bot reacts with ack emoji (👀) — confirms MCP server received the message
- Nothing appears in the Claude Code conversation
Debug logging added to server.ts confirms:
- mcp.notification({ method: 'notifications/claude/channel', ... }) is called
- Promise resolves successfully (no error)
- Outbound reply tool works fine (can send messages TO Telegram)
- Only inbound notifications are silently dropped
Tried: restarting Claude Code (12+ times), /reload-plugins,
killing zombie processes, reinstalling plugin, --no-profile.
None fixed it. Worked ~24h ago on same version.
For the model dropdown select Claude Opus 4.6 and for regression select Yes,
this worked in a previous version (or "same version" if that's an option — it
worked yesterday on 2.1.81).
Claude Model
Opus
Is this a regression?
Yes, this worked in a previous version
Last Working Version
2.1.81
Claude Code Version
2.1.81
Platform
Anthropic API
Operating System
macOS
Terminal/Shell
Terminal.app (macOS)
Additional Information
_No response_
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗