Getting Started with Otto
This page covers how to invite Otto, which permissions he needs (and doesn't need), and the basic configuration you should do right after adding him.
1. Invite Otto to your server
Use the official invite link below to add Otto to your server. Make sure you are logged into Discord and have the Manage Server permission.
Invite OttoThe invite will request the recommended permissions listed below. You can always adjust them later in your server settings.
2. Recommended permissions
Otto is a moderation & utility bot. He does not need full Administrator, but he does need enough access to see channels, respond, and use moderation actions.
Must-have permissions
- View Channels – see channels to respond in.
- Send Messages – reply to commands & events.
- Embed Links – send rich embeds (logs, help menus).
- Read Message History – for logging & context.
- Add Reactions – for reaction-based features.
- Use External Emojis – if your server uses them in responses.
- Manage Messages – clear spam, delete warnings, etc.
- Timeout Members – for timeouts via moderation commands.
- Kick Members – if you use Otto's kick commands.
- Ban Members – if you use Otto's ban commands.
Optional / nice-to-have
- Manage Roles – only if you use role-management commands.
- Manage Nicknames – for nickname moderation, if enabled.
- Use Application Commands – required for slash commands.
Permissions Otto does NOT need
For most servers, Otto does not need:
- Administrator
- Manage Webhooks (unless you add a webhook-based feature)
- Manage Emojis and Stickers
- Move Members / Deafen Members (voice control)
You can give Admin if you trust the bot and want everything to just work, but it isn't required for normal operation.
3. Basic configuration
Once Otto is in your server, we recommend doing a few quick setup steps so logs and moderation tools work properly.
- Create a staff role. Give this role to your moderators and admins. Keep Otto's bot role above staff roles in the role list, so he can manage them when needed.
- Set up log channels in your bot config. In your Otto configuration / environment variables, point these to real channel IDs:
ERROR_LOG_CHANNEL_ID – where Otto sends internal error reports WARN_LOG_CHANNEL_ID – where /warn and other mod actions are logged CHECKIN_LOG_CHANNEL_ID (optional) – if you log /checkin usage
- Check Otto's role permissions per channel. If he can't respond in a specific channel, make sure:
- His role can see the channel.
- Send Messages is enabled for his role.
- There are no channel-specific overrides blocking him.
- Test the basics. In a test channel, run:
/ping – check that Otto is alive /help – show the help menu /checkin – test the mental health check-in flow /warn @user – if you have moderation configured
4. Next steps
Once Otto is invited and configured, you can explore the rest of the documentation:
- Commands reference – full list of moderation, utility, and fun commands.
- Self-hosting & advanced setup – running Otto on your own VPS, environment variables, logging, etc.