Skip to content

Installation

Drop Courier.jar into your mods/ folder alongside Ceremony and Cobblemon. Start the server. That’s it — config files appear automatically in config/courier/.

DependencyVersionRequiredNotes
Minecraft1.21.1YesFabric only
Fabric Loader0.17+Yes
Fabric APILatestYes
Fabric Language KotlinLatestYes
Cobblemon1.6+Yes
Ceremony4.0+YesPowers storage, GUIs, and cross-server features
ImpactorLatestNoRequired for currency attachments
MongoDB / MariaDBAnyNoRequired for multi-server shared storage
Redis / NATSAnyNoRequired for cross-server mail delivery
  1. Download the Courier .jar from your purchase source
  2. Drop it into your server’s mods/ folder with all required dependencies
  3. Start (or restart) the server
  4. Confirm config/courier/ appeared with config.conf, messages.conf, and the guis/ folder
  5. Run /mail in-game — you should see the inbox GUI

Done. You’re running Courier.

For a single server, there’s nothing to configure. The defaults use:

SQLite : Local file storage, no external database required.

No message bus : Mail stays on the local server. Perfect for most setups.

These are controlled through your Ceremony configuration. Your config/ceremony/config.conf should have:

storageType = SQLITE
messageBus {
type = NONE
}

If you didn’t touch anything, that’s already what it says.

Running Courier across multiple servers? You’ll need three things:

  1. A shared database so all servers see the same mail
  2. A message bus so deliveries propagate instantly
  3. A unique server ID per server

In each server’s config/ceremony/config.conf:

storageType = MONGODB
mongoDb {
uri = "mongodb://username:password@your-host:27017"
database = "courier"
}

In each server’s config/ceremony/config.conf:

messageBus {
type = REDIS
redis {
host = "your-redis-host"
port = 6379
}
}

Every server needs a distinct serverId in config/ceremony/config.conf:

serverId = "survival-1"
serverId = "hub"

After starting your server, check the logs for [Courier] loading messages with no errors. Then test in-game:

/mail

The inbox GUI should open. Now send yourself a test:

/mail send YourName Test "Hello!"

Open your inbox. You should see it. That’s it — Courier’s working.

Config files not generating : Make sure all required dependencies are installed. Courier needs Ceremony, Cobblemon, Fabric API, and Fabric Language Kotlin. Check your server log for missing dependency errors.

Database connection errors : Double-check your Ceremony config for correct credentials, host, and port. Make sure your database server is running and accessible from the Minecraft server.

Cross-server mail not arriving : Verify that all servers share the same database, the message bus is configured and reachable on every server, and each server has a unique serverId. Check Ceremony logs for message bus connection status.

Permission errors on commands : Courier commands require appropriate permission levels. Make sure your permissions plugin grants courier.command.mail for players and courier.command.admin for admins.

Ready to send your first mail? Head to Your First Mail — it’ll take about 30 seconds.

Want to customize things first? Check out the Configuration Overview.