# Claude Code Channels Channels push external events (messages, alerts, webhooks) into a running [[Claude Code]] session via an [[Model Context Protocol (MCP)|MCP]] server, so Claude can react while you're away from the terminal. They can be two-way: Claude reads the event and replies back through the same channel (e.g., a chat bridge). Events only arrive while the session is open. Channels are a research preview feature requiring Claude Code v2.1.80+ and claude.ai login (no Console/API key auth). Team and Enterprise organizations must explicitly enable them. ## How it works A channel is an MCP server installed as a [[Claude Code Plugins|plugin]]. You enable it per session with the `--channels` flag: ```sh claude --channels plugin:telegram@claude-plugins-official ``` Multiple plugins can be space-separated. Being in `.mcp.json` isn't enough; a server must also be named in `--channels` to push messages. ## Supported channels Currently in the research preview: - **Telegram** — create a bot via BotFather, install the plugin, configure the token, pair your account - **Discord** — create a bot in the Discord Developer Portal, enable Message Content Intent, install the plugin, configure the token, pair your account - **Fakechat** — localhost demo at `http://localhost:8787` for testing the flow without external services All channel plugins require [Bun](https://bun.sh). ## Setup flow (general pattern) 1. Install the plugin: `/plugin install <name>@claude-plugins-official` 2. Configure credentials: `/<name>:configure <token>` 3. Restart with channels enabled: `claude --channels plugin:<name>@claude-plugins-official` 4. Pair your account by messaging the bot, then running `/<name>:access pair <code>` 5. Lock down access: `/<name>:access policy allowlist` ## Security Each channel plugin maintains a sender allowlist. Only paired IDs can push messages; all others are silently dropped. The allowlist is bootstrapped through the pairing flow. ## Enterprise controls | Plan | Default | |------|---------| | Pro / Max (no org) | Available; users opt in per session with `--channels` | | Team / Enterprise | Disabled until admin enables via `channelsEnabled` in managed settings | Admins enable channels from **claude.ai > Admin settings > Claude Code > Channels**. ## Use cases - **Chat bridge**: ask Claude something from your phone via Telegram or Discord; the answer comes back in the same chat while work runs locally against your files - **Webhook receiver**: forward CI results, error tracker alerts, or deploy pipeline events into a session where Claude already has your files open - **Monitoring**: push monitoring events so Claude can react to incidents in context ## How channels compare to other features | Feature | Direction | Good for | | ----------------------------------------- | ------------------------- | -------------------------------------------- | | Channels | External → session (push) | Reacting to events while away | | [[Claude Code Remote Control]] | You → session (remote) | Steering in-progress work from phone/browser | | Standard [[Model Context Protocol (MCP)]] | Session → server (pull) | On-demand querying of external systems | | [[Claude Code Tasks\|Scheduled tasks]] | Timer → session (poll) | Recurring checks on a schedule | ## Building custom channels You can build your own channel for systems that don't have a plugin yet. See the [Channels reference](https://code.claude.com/docs/en/channels-reference). During the research preview, `--channels` only accepts plugins from an Anthropic-maintained allowlist. Use `--dangerously-load-development-channels` to test custom channels. ## References - Documentation: https://code.claude.com/docs/en/channels - Channels reference (building your own): https://code.claude.com/docs/en/channels-reference - Official plugins source: https://github.com/anthropics/claude-plugins-official/tree/main/external_plugins - https://www.youtube.com/watch?v=9G6IPxSXU8s ## Related - [[Claude Code]] - [[Claude Code Plugins]] - [[Claude Code MCP Integration]] - [[Claude Code Remote Control]] - [[Claude Code Hooks]] - [[Claude Code Tasks]] - [[Claude Code Permissions]]