Discord channel plugin: notifications/claude/channel not handled by Claude Code

Resolved 💬 3 comments Opened Apr 6, 2026 by Cycasio Closed Apr 10, 2026

Summary

The Discord MCP channel plugin sends notifications/claude/channel when an inbound Discord message arrives, but Claude Code does not process or surface these notifications in the active session. This makes the Discord channel plugin non-functional for real-time conversation.

Steps to Reproduce

  1. Configure the Discord channel plugin (/discord:configure) with a valid bot token
  2. Complete pairing via /discord:access
  3. Send a DM to the bot from Discord
  4. Observe: the bot shows "typing" indicator (proving sendTyping() fires in handleInbound), but no response is ever generated

Expected Behavior

The inbound Discord message should appear in the active Claude Code session as a <channel source="discord" ...> tag (as described in the plugin's instructions), triggering the model to respond and reply via the reply tool.

Actual Behavior

  • The MCP server receives the message and calls sendTyping() — Discord shows "typing"
  • The MCP server sends mcp.notification({ method: 'notifications/claude/channel', params: { content, meta } })
  • Claude Code does not act on this notification — no response is generated
  • The user must manually use fetch_messages from the local terminal to see and reply to Discord messages

Analysis

The Discord plugin declares experimental: { 'claude/channel': {} } capability (server.ts:442) and sends notifications on notifications/claude/channel (server.ts:868-883). The consumer side in Claude Code's harness does not appear to subscribe to or handle this notification method.

Environment

  • Claude Code: 2.1.92
  • Discord plugin: 0.0.4
  • OS: macOS (Darwin 25.4.0)

🤖 Generated with Claude Code

View original on GitHub ↗

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