Quick answer
Discord notifies you of @mentions and replies only, so a keyword alert depends on your rights on the server:
- You manage the server: Server Settings, then AutoMod, then a custom keyword rule with the action Send an alert.
- You can add a bot: a keyword-alert bot (Kage Bot, CUB Protector, CharmBot, Pingster) watches the channels and pings a channel or your DMs.
- You are a regular member: no AutoMod and no bot. Your AI agent runs Discord's own search for your keywords on a schedule, in your own Chrome, and sends you only the new matches.
Overview
Community managers, founders and marketers want to know when someone says a word that matters to them in a Discord server: their product's name, a bug report, "hiring", a ban appeal. The way to get an alert depends on your rights on the server. If you manage it, Discord gives you AutoMod and lets you add a bot. If you are only a member, you can add neither, and you need another way.
Why it's hard
Discord has no personal keyword alert. Its notification settings let you choose all messages, @mentions only or nothing, per server and per channel, but not a word you pick. Its keyword rules, AutoMod, are built for moderation: only members with the Manage Server or Administrator permission can create them, the server must have Community turned on, and the alert goes to a logging channel, not to you. Keyword-alert bots need the same rights, because someone with Manage Server has to add them. Members have asked Discord for keyword notifications on its feedback site since at least 2019.
Ways to get Discord keyword alerts
As each tool's own page describes it, read on November 10, 2026.
| Way |
Who can set it up |
Where the alert goes |
Real time |
Cost |
| Discord notifications |
Anyone |
You |
Yes |
Free, but @mentions and replies only |
| AutoMod |
Manage Server or Administrator |
A logging channel |
Yes |
Free |
| Kage Bot |
An admin adds the bot |
A channel, and a DM to a member by ID |
Yes |
Premium feature |
| CUB Protector |
Someone with Manage Server adds the bot |
A staff channel |
Yes |
Free, no premium tier |
| CharmBot |
Members, with /notify add, once the bot is in the server |
Your DMs, without the message text |
Yes |
Not documented |
| Pingster |
Whoever connects the server |
A role or user ping |
Yes |
Not documented |
| KeywordPing (BetterDiscord) |
You, on a modified client |
Your Discord notifications |
While your client is open |
Free, against Discord's policy on client mods |
| Your AI agent with Reduck |
You, as a regular member |
Wherever your agent sends it |
No, at each scheduled run |
There is a free tier |
Step 1: If you manage the server, use AutoMod
- Turn on Community for the server, if it is not on.
- Open Server Settings, then AutoMod.
- Add a custom keyword rule. Separate keywords with commas; matches ignore case, and an asterisk matches part of a word (
*bug*).
- In the actions, choose Send an alert and pick a private logging channel. Turn off Block message if you only want the alert.
- Save. A server can have up to 3 custom keyword rules of up to 1,000 keywords each.
AutoMod alerts everyone who reads the logging channel. For an alert to one person, use a bot.
Step 2: If you can add a bot, pick a keyword-alert bot
- Pick the bot by where you want the alert: a staff channel (CUB Protector, Kage Bot, Pingster) or your DMs (CharmBot, Kage Bot).
- Add it to the server. This needs the Manage Server permission.
- Set your keywords and the channels to watch, in the bot's dashboard or with its slash command (
/notify add on CharmBot, /keywordalert add on Kage Bot).
- Set a cooldown, so a busy channel does not ping you for every message.
Step 3: If you are a regular member, let your agent search for you
You cannot add a bot or create AutoMod rules, but Discord's own search sees every channel you can read. Reduck gives your AI agent that search as a tool: it runs in your own Chrome, where you are already signed in to Discord, as your own account. On a schedule, your agent searches each server for your keywords, drops the matches that are not really about them, and sends you only the messages you have not seen yet, with the server, the channel, the author and a link.
- Create a free account at reduck.ai.
- Install the Reduck extension in Chrome and pair it.
- Connect Reduck to your agent: docs.reduck.ai.
- Ask: "Every morning, search my Discord servers {server names} for new messages that mention {keywords}. Drop the ones that are not really about them, and send me only the messages I have not seen yet, with the server, the channel, the author and the link."
Stay signed in to Discord in that Chrome, in one tab only. The alert comes at each run, not in real time, and only while that Chrome is open.
For developers: run it from a script with cron
Get the server id and the channel id from Discord's developer mode, or from list_channels. Then save this as discord-alerts.sh:
#!/bin/bash
SERVER=123456789012345678
CHANNEL=234567890123456789
KEYWORD="your product"
sqlite3 alerts.db "CREATE TABLE IF NOT EXISTS seen (id TEXT PRIMARY KEY)"
npx @reduck-ai/cli@latest run --script reduck/discord.com/search_messages \
guildId=$SERVER "channelIds=[\"$CHANNEL\"]" "content=$KEYWORD" > page.json || exit 1
jq -r '.messages[] | [.messageId, "\(.author.name): \(.content) \(.url)"] | @tsv' page.json |
while IFS=$'\t' read -r id alert; do
added=$(sqlite3 alerts.db "INSERT OR IGNORE INTO seen VALUES ('$id'); SELECT changes();")
[ "$added" = "1" ] && echo "$alert"
done
Each run prints one line per new message: the author, the text and the link. The first run prints the latest matches; the next runs print only new ones. Run it every 15 minutes with cron, with an API key in REDUCK_API_KEY, and send the lines where you want them, for example to your phone with ntfy:
*/15 * * * * cd ~/discord-alerts && ./discord-alerts.sh | while read -r line; do curl -s -d "$line" ntfy.sh/your-topic; done
To build alerts into your own code, call the same script with the REST API: POST /run with your API key in x-api-key, the script reduck/discord.com/search_messages and its arguments, and "browser": "extension" so the run uses your signed-in Chrome. More on this setup: Discord keyword alerts with no bot or admin rights.
Tools
| Script |
What it does |
Takes |
list_servers |
The servers you are a member of, with their ids |
nothing |
list_channels |
A server's channels, with their ids |
the server id |
search_messages |
The newest messages of one server that match your keyword, 25 per page |
the server id, the keyword, channels (optional) |