Skip to content

How to Set Up a Minecraft Discord Server? Channels, Roles, and Whitelist Setup

Minecraft Discord server setup for survival, SMP, and mini-game communities: channel categories, roles, whitelist applications, rules, events, giveaways, ticket support, and moderation.

VeyroBot team

This article was translated automatically from the Turkish original. Read the Turkish original

How to Set Up a Minecraft Discord Server? Channels, Roles, and Whitelist Setup
In this article
  1. 1. Initial skeleton based on server type
  2. 2. Roles: player, interest, supporter, and staff
  3. 3. Whitelist and application
  4. 4. Rules channel
  5. 5. Events and giveaways
  6. 6. Ticket support
  7. 7. Moderation: filters, warnings, and logs
  8. 8. Checklist before launch
  9. Frequently asked questions

At a glance

A Discord server for a Minecraft community is built with the following skeleton: info (rules, connection address, patch notes), entry (whitelist application), community and game channels, events, support, and staff area. Roles consist of player roles, interest and version roles, supporter roles, and the staff team. Automatically syncing in-game whitelist or ranks with Discord is not the job of VeyroBot; you manage these steps on the game side.

In-game chat is temporary in Minecraft; Discord becomes the hub for permanent announcements, rules, and support. We covered common community issues in our Minecraft, Roblox, and Valorant article; here we are only looking at the setup layout. The setup is done manually: you create the categories, channels, and roles in Discord yourself, you do not have VeyroBot apply a template layout. VeyroBot handles repetitive tasks such as applications, support, events, and moderation.

1. Initial skeleton based on server type

Five or six channels are enough for a small friend SMP. A survival server with hundreds of players requires heavy moderation and support. In a mini-game network, a separate channel and role are created for each mode. The skeleton is the same, the weight changes:

CategorySample channelsWho writes
Inforules, announcements, server-info (connection address and version), patch-notesStaff only
Entrywhitelist-application, faqNew member
Communitygeneral-chat, media, builds, suggestionsPlayers
Gametrading, team-search; in a mini-game network, one channel per modePlayers
Eventevents, giveawaysStaff write, players join with buttons
Voicegeneral voice, ➕ Create RoomPlayers
Supportsupport (ticket panel)Everyone reads, opens tickets
Staffstaff-chat, mod-log, application-reviewStaff only

There are ready-made equivalents for two channels in VeyroBot. Temporary voice rooms (/jtc-setup): a private room is opened for the player who enters the ➕ Create Room channel and is deleted when empty; suitable for players to open their own team rooms. Suggestion system (/setsuggestions and /suggest): suggestions drop into the channel with 👍 and 👎 reactions, and staff approve or reject them with buttons. A bridge that transfers in-game chat to a Discord channel is the job of a separate plugin; it has no equivalent in VeyroBot.

Give permissions to the category, and let channels inherit from the category. Check out the Discord server setup guide for general order and permission logic.

This topic in VeyroBot:Discord Application Form →

2. Roles: player, interest, supporter, and staff

RoleWhat it is forHow to get it
ManagementServer and Discord managersGiven by server owner
ModeratorWarnings, mutes, ticket responsesGiven by management
Build and dev teamMap and plugin team; sees only their own channelsGiven by management
PlayerMember who passed the whitelist or approved rulesGiven by application form or role panel
Supporter rolesColor and special channel on Discord for those supporting the serverGiven by you
Interest and version rolesJava or Bedrock, event notification, mini-game modesMember gets it themselves from the role panel
Level rolesBased on chat activity, e.g., New, Active, SeniorAutomatic as a level reward

Do not give Administrator permission to any role; open only the required permissions with the principle of least privilege. Roles are ordered from top to bottom, and the bot's role must be above the roles it assigns. Check out the Discord role and permission system reference for details.

Be clear about supporter roles: VeyroBot does not automatically sync in-game ranks with Discord roles. The rank is on the game side; you assign the Discord role after support is verified (via the /role command). Keep the privilege provided by the role limited to Discord: color, special chat channel, etc.

Set up interest and version roles with VeyroBot's role panel (/reactionrole). Members choose the Java or Bedrock role themselves via button or dropdown menu; event notification roles are also obtained this way, and that role is tagged in announcements instead of @everyone. The level system grants XP through messages and (if enabled) in voice channels; a role reward can be given upon leveling up. This measures chat activity, not in-game playtime.

3. Whitelist and application

Java servers have their own whitelist, and player names are added on the game side. The task to be done on Discord is to collect applications and record the decision. With VeyroBot's Application Forms module, the flow works like this: a member clicks the Apply button in the whitelist-application channel, answers the questions in a Discord window, and the application drops into the application review channel with Accept and Reject buttons; upon acceptance, the Player role is assigned, and the result goes to the member via direct message.

A form can have a maximum of 15 questions; short answers are 200 characters, long answers are 1,000 characters, and dropdowns have between 2 and 25 options. Five or six questions are usually enough for Minecraft:

  • Minecraft username (short answer): needed verbatim when adding to the list.
  • Version (dropdown): Java or Bedrock.
  • Previous servers played on (short answer).
  • What do they want to do on this server? (long answer): building, economy, PvP, etc.
  • Rule agreement (dropdown).

Only ask for personal information like age if truly necessary, and as a range. You select the reapplication period for rejected members (immediately, 1, 7, 30 days, or never) per form.

On a public server without a whitelist, rule approval is enough instead of an application: put a single-button role panel in the rules channel, and whoever clicks the button gets the Player role. Since entry is open, AutoMod and Anti-Raid settings are even more important here. Check out the growth guide for your server expansion plans.

4. Rules channel

Minecraft communities write rules based on the game's own problems. Add a single-sentence penalty to every item:

  • Griefing and stealing: damaging someone else's build, taking items from chests.
  • Unfair advantage: cheat clients and x-ray-like tools.
  • Exploiting bugs: using glitches like item duplication. Encourage reporting bugs you find.
  • Land and protection zones: area claiming and distance rules, according to your server's protection plugin.
  • PvP: where it is allowed and where it is forbidden.
  • Chat and Discord: insults, spam, advertising other servers.

Send rules as an embed from the Message Builder tab: you can edit them after sending, and you won't need to rewrite the message from scratch for a new season or rule change. Do not embed the connection address and version info into the rule text; keep them separate in the server-info channel. If you want a "open a ticket for support" reminder under crowded channels like general-chat, use a sticky message (/sticky): the bot resends it to the very bottom after every new message.

5. Events and giveaways

Events are set up from the VeyroBot panel and do two things: they open a Discord event in the server's Events tab and send a card with Attending, Maybe, and Not Attending buttons to the channel you select. Reminders are sent between 10 minutes and 1 day before the event at a time you choose, tagging those who said they will attend. You enter the time in your chosen timezone; each member sees their own time on the card. Building competitions, mini-game nights, and season openings are good examples; check out the event ideas article for more inspiration.

You start giveaways with /giveaway or from the panel: the prize, duration (1 minute to 7 days), and winner count (1 to 20) are entered. Members click the Join button; winners are automatically selected when time runs out. Optionally, only those with the Player role can participate. /giveaway-manage ends the giveaway early, redraws, or cancels it. VeyroBot does not deliver the prize itself, such as an in-game item; you deliver it to the winner manually in-game.

If you have content-creating players, set up stream notifications: /streamalert is used for Twitch, Kick, and YouTube, and the steps are explained in the live stream notification guide.

6. Ticket support

Move support requests out of direct messages and into tickets: a member clicks a button, and a channel visible only to them and the support team opens. A maximum of 5 ticket types can be defined; each type has a separate category and staff role. There are no question forms upon ticket opening; write the required information in the panel description so the member provides it in their first message.

Ticket typeWhat it is forInfo requested in first message
SupportConnection issue, whitelist questionGame name and version
Player complaintGriefing, cheat suspicionPlayer name, coordinates, time, screenshot or clip
Ban appealBan or warning appealBan date and reason
Bug reportGame or plugin bugWhat was done, what was expected
PartnershipStreamer and other server offersChannel or server link

A member can only open one ticket at a time. Upon closure, a .txt and .html transcript of the conversation drops into the log channel; this ends arguments like "nothing like that was discussed" during ban appeals. Show complaint tickets to moderators, and appeal tickets only to management. Check out the ticket system guide for step-by-step setup.

7. Moderation: filters, warnings, and logs

Two filters stand out for Minecraft communities: invite and link filters that prevent advertising other servers, and spam filters. AutoMod also offers caps, mass mention, and profanity filters; the * wildcard and regex patterns can be used for banned words. Each invite and link filter has a separate whitelisted channel list; add channels where you want to allow links, like media, there. Check out the AutoMod guide for setup.

Tie penalties to tiers. Warnings are given with /warn, mutes with /timeout, and bans with /ban; bans can also be temporary. Two warning thresholds and an action for each are selected in the panel, and manually given warnings also trigger the tier. Each action is written to the mod-log channel as a numbered case, and /case-history shows a player's entire record. You can keep the record in one place by adding an in-game penalty to Discord logs with /note; in-game penalties do not automatically drop here. /slowmode in crowded channels and /lock during events come in handy.

Enable Anti-Raid in advance on busy days like season openings or a streamer's promotion: if many bots or fake accounts enter in a short time, text channels are locked and an alert drops into the mod-log channel. We explained the setup in the Anti-Raid guide.

8. Checklist before launch

  • Tour as a guest using a newly created test account: staff channels should not be visible, and rules must be read-only.
  • No role should have Administrator permission, and the bot's role must be above the roles it assigns.
  • Submit and accept a test application: the Player role and a direct message should be received.
  • Open and close a test ticket; the transcript should drop into the log channel.
  • Issue a test warning; the case should appear in the mod-log channel.
  • Verify the connection address and version info one last time in the server-info channel.

Frequently asked questions

Which channels should be in a Minecraft Discord server?

Info (rules, announcements, server info), entry (applications), community (chat, media), support, and staff channels are enough to start. Add events and voice channels as the community settles in.

Does whitelist approval automatically reflect in-game?

No. VeyroBot collects applications, records the decision, and assigns the Player role; it does not connect to the game server. Adding the player name to the in-game whitelist is a separate step.

Do in-game ranks and Discord roles sync automatically?

There is no such sync in VeyroBot. You assign supporter roles; members get interest and version roles from the role panel, and level roles as level rewards.

How do I run a giveaway on a Minecraft server?

Enter the prize, duration, and winner count with /giveaway; members participate via button, and winners are automatically selected when time expires. You deliver the in-game prize to the winner manually.

You can check the commands page for the full list of commands, the documentation for module setup details, and the premium page for plan coverage.

Last updated: September 22, 2026. VeyroBot behaviors are based on module descriptions in the documentation; Minecraft concepts are commonly used definitions in communities and your server's plugins may work differently.

Add the bot to your server Free · ~30s