Discord
2 min read
Discord lets an agent participate in servers, channels, and direct messages through a bot. Setup combines server permissions, application intents, and channel rules in Kujira.
Create the application and bot
Create an application
Enable content access
Invite the bot to the server
bot scope and grant only the required permissions. For a conversational channel, View Channel, Send Messages, Read Message History, and—when appropriate—attachment or embedded-link permissions are usually enough. Create the channel in Kujira
Intents and permissions are separate controls
An intent determines which data Discord can deliver to an application; server permissions determine where the bot can read or write. Both must be configured.
Limit the agent's scope
Inviting a bot to a server does not give it access to every channel: visibility is determined by each channel's permissions. Use that layer with Kujira's allow list to reduce scope to the minimum required.
By default, group conversations require a mention to activate the agent. This is a good setting for shared channels: it prevents it from processing unrelated conversations and makes it clear when its intervention is requested. Create exceptions only in channels dedicated to the agent.
Support channel
Dedicated channel
Verify and diagnose
- Mention the bot in an authorized channel.
- Check that it can read the channel and post a response in Discord.
- If the event does not arrive, check the token, Message Content Intent, allow list, and mention rule.
- If it arrives but cannot reply, check the bot's effective permissions in that channel, including permissions denied by a category.
External conversations are handled from Agent Desk. For servers with more than one hundred communities, Discord may require additional approval for privileged intents.