---
title: "How to set up a Discord server"
description: "Build categories, channels and roles by hand and lock the right ones down, or describe the server to Bond and approve its plan before it builds."
canonical_url: "https://www.bondbot.gg/use-cases/set-up-a-server"
last_updated: "2026-10-05"
---

# How to set up a Discord server

In Discord you create the server, then build its categories, channels and roles by hand and lock the right ones down in each channel's permissions. With Bond you describe the server in one message, it shows a plan listing every channel and role before it builds anything, and it builds only what you approve.

Verified 2026-09-27 on a test server, build d0bec7a.

## In Discord, without a bot

1. Press **+** at the bottom of the server list, choose **Create My Own**, pick who the server is for, and give it a name and an icon.
2. Right-click the channel list and choose **Create Category** for each area, for example Info, Study and Staff.
3. Press **+** next to a category to add its channels: #rules and #announcements under Info, #general, #resources and a voice channel under Study.
4. Create a moderator role in **Server Settings**, **Roles** with only the permissions it needs, and drag the roles into order: moderators above members, and each bot's role above the roles it manages.
5. Make the Info category read-only: **Edit Category**, **Permissions**, deny @everyone **Send Messages**, and allow it for the moderator role. Channels synced to the category follow it.
6. When you create the Staff category, switch on **Private Category** and add the moderator role, so it is hidden from everyone else from the start.
7. Set a **Verification Level** in **Server Settings**, **Safety Setup**, and consider **Enable Community** in Server Settings for Onboarding, Rules Screening and announcement channels.

Every step above repeats for each channel and role you add. Bond does the same build from one message. See it as an [AI Discord server builder](https://www.bondbot.gg/ai-discord-server-builder).

For a layout made for one kind of server, with its channels, roles and who sees what, start from a guide: [D&D campaign](https://www.bondbot.gg/guides/discord-server-for-dnd-campaign), [study server](https://www.bondbot.gg/guides/discord-study-server), [support server](https://www.bondbot.gg/guides/discord-support-server) or [gaming community](https://www.bondbot.gg/guides/discord-gaming-community-server).

## With Bond, in one message

A real run, recorded on a test server: what was asked, what Bond asked you to approve, what it did, and what members saw afterwards.

In #admin-chat:

> **You:** @Bond Set up a study server: info category with rules and announcements only mods can post in, general and resources channels, a study voice room, and a private staff area.

> **Study server layout**
> plan for @You
> 3 categories, 6 channels, and 1 Moderator role; existing server content stays untouched.
> ▼ INFO · 🔒 Everyone can read; Moderator can post
>     rules *Rules (members read; Moderator posts)*
>     announcements *Announcements (members read; Moderator posts)*
> ▼ STUDY · Open to everyone (default)
>     general *General discussion*
>     resources *Study resources*
>     🔊 study-room *Study voice room*
> ▼ STAFF · 🔒 Moderator and server admins only
>     staff-chat *Private staff discussion*
> **Roles** · Moderator
> Everyone can view #rules and #announcements but cannot send messages; Moderator can view and send there.
> Only Moderator and server admins can view Staff and its channels.
> Keeps Existing categories, channels, roles, and messages remain unchanged.
> `#` grey planned · Expires in 10 minutes
>
> Buttons: Build it, Change something, Cancel. Pressed: Build it.

> **Create the Staff category**
> for @You
> Starts empty, with 2 permission overwrites.
> Part of the plan you approved · Always allow stops asking about new categories · Expires in 10 minutes
>
> Buttons: Allow, Always allow, Deny. Pressed: Allow.

> **Create the Study category**
> for @You
> Starts empty.
> Part of the plan you approved · Always allow stops asking about new categories · Expires in 10 minutes
>
> Buttons: Allow, Always allow, Deny. Pressed: Allow.

> **Create the Info category**
> for @You
> Starts empty.
> Part of the plan you approved · Always allow stops asking about new categories · Expires in 10 minutes
>
> Buttons: Allow, Always allow, Deny. Pressed: Allow.

> **Create the Staff category**
> for @You
> Starts empty, with 3 permission overwrites.
> Part of the plan you approved · Always allow stops asking about new categories · Expires in 20 minutes
>
> Buttons: Allow, Always allow, Deny. Pressed: Allow.

> **Create @Moderator**
> for @You
> No permissions beyond @everyone.
> Part of the plan you approved · Always allow stops asking about new roles · Expires in 20 minutes
>
> Buttons: Allow, Always allow, Deny. Pressed: Allow.

> **Create 6 channels**
> for @You
> Part of the plan you approved · Always allow stops asking about new channels · Expires in 20 minutes
>
> Buttons: Allow, Always allow, Deny. Pressed: Allow.

> **Update permissions for @Moderator on #Staff**
> for @You
> Allows **View Channel**. For @Moderator on #Staff.
> > ⚠️ Earlier in this run **#Staff** (ID 100000000000000019) was made private to You and Bond.
> > This grants **Moderator** **View Channel** there.
> Reopening something you just made private always asks · Expires in 20 minutes
>
> Buttons: Confirm, Cancel. Pressed: Confirm.

> **Update permissions for @everyone on #Info**
> for @You
> Denies **Send Messages**. For @everyone on #Info.
> Always allow stops asking about channel permission changes · Expires in 20 minutes
>
> Buttons: Allow, Always allow, Deny. Pressed: Allow.

> **Update permissions for @Moderator on #Info**
> for @You
> Allows **Send Messages**. For @Moderator on #Info.
> Always allow stops asking about channel permission changes · Expires in 20 minutes
>
> Buttons: Allow, Always allow, Deny. Pressed: Allow.

What Bond did:

- List channels
- List roles
- Ask questions
- Create category
- Bulk create channels
- Create role
- Set channel permissions
- Check channel access

> **Bond:** Study server setup is complete and access was verified.
>
> - Created **Info** with `#rules` and `#announcements`. Everyone can view them but cannot post; **Moderator** can post.
> - Created **Study** with `#general`, `#resources`, and the `study-room` voice channel, open to everyone.
> - Created **Staff** with `#staff-chat`, visible only to **Moderator** and server admins.
> - Created the **Moderator** role. It currently has no members; assign it to your moderators to give them the access above.
>
> The access check passed: unverified members can see Info, the study channels, and the two info channels, but not Staff or `#staff-chat`. Moderators can see all the new channels and can post in Info. Existing content was left unchanged.

The channel list afterwards:

- Info: #rules, #announcements
- Study: #general, #resources, study-room (voice)
- Staff: #staff-chat

Who can see and post where:

- Info (rules, announcements): Everyone reads, Moderator posts
- Study (general, resources, study-room): Open to everyone
- Staff (staff-chat): Private to Moderator

New role: Moderator.

Light tier · 1 message · 84 seconds · 90K tokens

Recorded on a Bond test server on the Light tier, the tier every free plan runs on. Server, channel and member IDs are placeholders, the test bot is shown as Bond, and the steps where Bond loads its own tools or pages through a long result are left out. The test server has no plan limits, so the plan limits a step reports are left out.

Bond showed its plan first. The recording pressed Build it, then Allow on every card after that, Confirm on the one that let Moderator into Staff, and never Always allow. Bond's first try at the Staff category left its own role out, so that step was refused before anything was created, and Bond asked again with its role added. The test server already had the #general every new server starts with. Bond left it where it was and made a second #general inside Study, as its plan said.

## The permissions it takes

Bond checks every step against your own Discord permissions and role position before it acts, and what it reads back is only what you can already see.

### What you need

- List channels: Nothing extra
- List roles: Nothing extra
- Ask questions: Nothing extra
- Create category: Manage Channels
- Bulk create channels: Manage Channels
- Create role: Manage Roles
- Set channel permissions: Manage Roles in that channel
- Check channel access: Manage Roles

### What Bond needs

- **Manage Channels** to create categories and channels, and **Manage Roles** to create roles and set who can see and post where.
- Bond creates new roles below its own highest role. It cannot place a role above itself or give a role permissions it does not hold.
- A private area has to let Bond's role in as well, or Bond could not build inside it or fix it later. Bond adds its own role when it makes an area private, as it did for Staff in this run.
- It never needs Administrator, and it checks every change against your own permissions too.

## What to watch for

- Approving the plan is not the last question. Bond still asks before each kind of change, such as a new category, a new role or a permission change, and Always allow on a card stops it asking about that kind. Opening up a place it just made private always asks.
- Bond creates up to 20 channels in one step, so a bigger build takes a few steps under the same plan.
- A private area is private from the moment it is created: Bond makes the staff category with its permissions in place rather than locking it afterwards.
- Bond builds beside what the server already has. Name a channel you want used or moved, such as your own #general, or you may get a second one.
- The new moderator role starts with no permissions of its own and no members. Give it to your moderators, or they cannot post in the read-only channels.
- Bond keeps track of each part of the plan as it lands, and does not call the build done while a part is missing.

## Questions people ask

### Will Bond delete my existing channels?

No. Setting up adds and changes, and a delete only happens after you confirm the exact channel or category Bond names.

### Can I undo the changes?

Bond keeps a record of the channel permissions it changed and can put them back exactly as they were. New channels and roles can be removed by asking, each delete confirmed by name.

### Does Bond need Administrator?

No. Every action maps to one Discord permission, and Bond's invite asks for those rather than Administrator. It also checks that you hold the permission for each change you ask for.

### Why not use a server template?

A Discord server template copies a whole layout into a new server in one click, and that is the fastest start for an empty server. Bond is for the server you already run: it changes it in place, keeps your members and history, and can make the same kind of change again six months later.

### Is it free?

Yes. Every tool works on the free plan, and a build uses tokens from your weekly allowance. A free account gets 600K tokens a week.

## Read next

- [How to set up a Discord server with AI](https://www.bondbot.gg/blog/how-to-set-up-a-discord-server-with-ai): What AI can and cannot do for Discord server setup in 2026, building a community server by talking to a bot, and when a template still wins.
- [Reorganise channels and categories](https://www.bondbot.gg/use-cases/organise-channels): Rename, regroup and reorder a messy channel list in one pass, including moving whole sets of channels under new categories.
- [How to make a private channel in Discord](https://www.bondbot.gg/use-cases/private-channels): Create a channel only certain roles can see, without opening the permissions tab and toggling twenty overwrites by hand.
- [Set up an announcement channel](https://www.bondbot.gg/use-cases/announcement-channel): A channel only staff can post in, published so other servers can follow it, with the posts pinned where people will find them.
