FrontMCP Channels let your MCP server push real-time events directly into Claude Code. Unlike resources (which are pulled by the client), channels are server-initiated — your server decides when to send notifications based on external triggers.Documentation Index
Fetch the complete documentation index at: https://docs.agentfront.dev/llms.txt
Use this file to discover all available pages before exploring further.
What Channels Enable
- Webhook forwarding — CI/CD pipelines, GitHub events, monitoring alerts stream into Claude’s context automatically
- Chat bridges — WhatsApp, Telegram, Slack users can message Claude Code and receive replies
- Error monitoring — Application errors pushed to Claude for immediate debugging assistance
- Agent/Job completion — Background AI agents and jobs notify Claude when they finish
- Event bus — Any in-process event can trigger a channel notification
How It Works
- An event arrives from a source (webhook HTTP POST, event bus, agent emitter, or manual push)
- The channel’s
onEvent()transforms the payload into a{ content, meta }notification ChannelNotificationServicesendsnotifications/claude/channelto all capable sessions- Claude sees the event as
<channel source="..." ...meta>content</channel>in its context - For two-way channels, Claude can reply using the auto-registered
channel-replytool
Declarative Definition
Channels use the same decorator pattern as tools, resources, and prompts:Seven Source Types
| Source | Use Case | Trigger |
|---|---|---|
webhook | GitHub, CI/CD, Stripe, any HTTP POST | External HTTP request |
app-event | Application errors, status changes | In-process event bus |
agent-completion | AI agent results | Agent registry emitter |
job-completion | Background job results | Job execution manager |
service | WhatsApp, Telegram, Slack connectors | Persistent connection with tools |
file-watcher | Log files, config changes, build outputs | File system events |
manual | Custom logic | scope.channelNotifications.send() |
Capability-Based Delivery
Channel notifications are only sent to MCP sessions that advertiseexperimental: { 'claude/channel': {} } in their capabilities. Non-Claude Code clients (Cursor, Cody, generic MCP) are automatically filtered out — no errors, no wasted bandwidth.
Learn More
Channels Guide
Full channels documentation with all source types and examples
@Channel API
Decorator reference and configuration options