Getting started

Permissions

Mira needs specific Discord permissions to work. Granting them all on invite is recommended โ€” denying some features will silently break.

Permission integer

On invite, Mira asks for 1099780451462. This is the bitmask that Discord uses to encode the permission set below.

What each permission is for

PermissionUsed for
Manage ServerReading server-level settings, audit log access
Manage ChannelsCreating ticket channels, configuring slowmode
Manage RolesAuto-roles, level rewards, verification grant, ticket overwrites
Manage WebhooksLogging messages with author preserved
View ChannelsReading messages for auto-mod and logging
Send MessagesAll output
Send Messages in ThreadsSuggestion auto-threads, etc
Embed LinksRich embed output (welcome, audit, mod log)
Attach FilesTicket transcripts
Read Message HistoryPurge, transcripts, audit context
Use External EmojisCustom emoji in embeds
Add ReactionsReaction roles, poll buttons
Mention @everyoneOnly when you explicitly configure a ping role
Kick MembersKick command, anti-nuke kick punishment
Ban MembersBan command, anti-nuke ban punishment
Moderate MembersTimeout-based mute

Role hierarchy

Discord enforces this: a bot can only manage roles below its own role. Move Mira's role above:

  • Any role granted by auto-roles or verification
  • Any role granted by level rewards
  • Any role you want Mira to remove on a kick / ban target

Privileged intents

Mira uses three privileged intents that you cannot configure โ€” they're set on our side at the Discord developer portal:

  • Server Members โ€” required for welcome, leveling, role management
  • Message Content โ€” required for auto-mod, autoresponder
  • Presence โ€” required for the "online members" count on the dashboard

Dashboard access

The dashboard uses Discord OAuth and only shows servers where you have Manage Server. There is no role-based dashboard access today โ€” if you can manage the server, you can manage Mira's settings for it.