[BUG] notifications/claude/channel MCP notifications not delivered to session

Resolved 💬 3 comments Opened Mar 22, 2026 by lostinacrowd2 Closed Mar 26, 2026

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?

The official Telegram plugin sends inbound messages via mcp.notification({ method: 'notifications/claude/channel',
... })
,
but Claude Code never injects these into the conversation.

## Confirmed via debugging

  • Bot polling works (message is consumed by getUpdates)
  • No webhook conflict
  • MCP transport accepts the notification (promise resolves ok, no error thrown)
  • Server declares experimental: { 'claude/channel': {} } capability at init
  • Tested on Claude Code 2.1.81, Windows 11

## Workaround
Added a get_messages polling tool to the server and use CronCreate to call it every minute.

What Should Happen?

The <channel source="telegram" ...> block should appear in the conversation as an inbound message.

Error Messages/Logs

Steps to Reproduce

  1. Install the Telegram plugin (claude-plugins-official) and configure it
  2. Send a message from Telegram to the bot (allowed sender, dmPolicy: allowlist)
  3. The MCP server receives the message, gate passes, and mcp.notification resolves successfully (confirmed via debug

logging)

  1. No message appears in the Claude Code session

Claude Model

Sonnet (default)

Is this a regression?

I don't know

Last Working Version

_No response_

Claude Code Version

2.1.81

Platform

Anthropic API

Operating System

Windows

Terminal/Shell

PowerShell

Additional Information

_No response_

View original on GitHub ↗

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