feat: MCP server push notifications (unsolicited messages to client)

Resolved 💬 10 comments Opened Mar 20, 2026 by laynepenney Closed May 23, 2026

Use case

Multi-agent coordination via MCP servers. Our memory system (synapt) uses MCP to provide persistent channels between agents. When Agent A posts a message, Agent B should be notified — but MCP is request-response only, so B only sees the message on its next tool call.

Current workaround

We piggyback channel checks on every MCP tool response via a suffix appended to tool results. This works when the agent is actively making tool calls, but fails when idle — the agent has no way to receive notifications without polling.

Proposed

Allow MCP servers to send unsolicited messages/notifications to the client. This could be:

  1. A server-initiated "notification" message type that appears in the agent context
  2. A "push" channel that the server can write to at any time
  3. Server-sent events or webhooks that trigger a client-side prompt

Why this matters

  • Multi-agent coordination requires real-time awareness of team activity
  • Polling wastes context window tokens (hundreds of "no new messages" checks)
  • The MCP protocol already supports bidirectional communication in theory — this just enables the server→client direction for notifications

Context

We built synapt (https://github.com/laynepenney/synapt), a persistent memory system for AI coding assistants. Four agents (3 Claude Code + 1 Codex) coordinate via shared channels. The lack of server push is the biggest remaining coordination gap — agents go "dark" when idle because they have no way to receive notifications without a tool call.

View original on GitHub ↗

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