• 9/28/26 11:35 am
- 4 views
- save_alt 0 downloads
- Game Version
- Minecraft 26.2
- Progress
- 100% complete
3
UpdateBeacon
A server-side Minecraft mod that automatically checks for updates to your installed mods on Modrinth and CurseForge, then notifies your operators — and can download and apply the updates for you. No client installation required.
Features
Update detection
- Checks every installed mod against both Modrinth and CurseForge (CurseForge is enabled by adding a free API key).
- Hash-based matching — compares the SHA-512 of each installed jar against Modrinth's file records (and CurseForge fingerprints), eliminating false positives from version-string quirks (e.g.
1.4.147vs1.4.147+v240613). - Nested and bundled sub-mods are skipped automatically.
- Per-mod update channels — track
release,beta, oralphaindependently for each mod. - Pins — freeze a mod at its current version to silence update notices until you unpin it.
Notifications
- Console — logs available updates on every check.
- In-game chat — colored output with clickable download links, sent to eligible ops.
- Player login — ops see any pending updates when they join.
- Webhooks — post to any number of endpoints at once (see below).
Downloads & applying
- Download pending updates to a staging area with hash verification against the source's expected hash.
- Apply staged jars on the next server stop, or run a timed apply countdown that restarts the server for you.
- Replaced jars are backed up first, so any update can be rolled back.
Maintenance
- Integrity scan — verify your installed jars against their published hashes.
- Hot reload — re-read the config without restarting.
- Optional scheduled checks on a repeating timer.
Commands
All commands are under
/updatebeacon and require permission level 2 (op).| Command | Description |
|---|---|
/updatebeacon check | Run a fresh update check and display results |
/updatebeacon list | Show cached results from the last check |
/updatebeacon info <modid> | Detailed info, channel, and a direct download link for one mod |
/updatebeacon scan | Integrity scan — verify installed jars against published hashes |
/updatebeacon download | Download all pending updates to the staging area |
/updatebeacon staged | Show what is downloaded and waiting to be applied |
/updatebeacon apply [seconds] | Apply staged updates now, or start a restart countdown |
/updatebeacon apply cancel | Cancel a running apply countdown |
/updatebeacon rollback <modid> | Restore a mod's previous jar from backup |
/updatebeacon pin <modid> | Pin a mod at its current version (suppress updates) |
/updatebeacon unpin <modid> | Remove a pin |
/updatebeacon ignore <modid> | Stop checking a mod entirely |
/updatebeacon unignore <modid> | Resume checking a mod |
/updatebeacon channel <modid> <release\|beta\|alpha\|any> | Set a mod's update channel |
/updatebeacon reload | Hot-reload updatebeacon.toml without restarting |
Webhooks
Add one
[[webhooks]] block per target, each with its own URL and format:[[webhooks]]
url = "https://discord.com/api/webhooks/..."
format = "discord_embed"
[[webhooks]]
url = "https://your-endpoint.com/hook"
format = "generic_json"
Supported formats: -
discord_embed — rich embed for Discord webhooks - generic_json — simple JSON payload for custom integrationsInstallation
Drop the mod jar that matches your Minecraft version and loader into your server's
mods/ folder, then start the server once to generate the config.Requirements: - A supported Minecraft version (see table above) - Fabric Loader with Fabric API, or NeoForge - A free CurseForge API key (optional — only needed for CurseForge update checks)
Configuration
Generated at
config/updatebeacon.toml on first run:[general]
enabled = true
check_on_startup = true
check_interval_minutes = 0 # 0 = disabled; any positive value = minutes between checks
[ignore]
mod_ids = [] # mod IDs to skip, e.g. ["mymod", "anothermod"]
quiet_when_no_updates = true # suppress all notifications when everything is up to date
[console]
enabled = true
[chat]
enabled = true
ops_only = true # only notify server operators
permission_level = 2 # minimum permission level to receive notifications
# Add one [[webhooks]] block per target. Supported formats: discord_embed, generic_json
# [[webhooks]]
# url = ""
# format = "discord_embed"
[downloads]
auto_download = false # automatically download updates after each check
auto_apply = false # swap staged jars into mods/ on server stop
backup = true # keep replaced jars in .updatebeacon/backup/
allowed_mod_ids = [] # empty = all mods eligible; non-empty = whitelist
apply_countdown_seconds = 300 # default countdown length for /updatebeacon apply
[curseforge]
# Get a free API key at https://console.curseforge.com/
api_key = "" # leave blank to check Modrinth only
# Per-mod update channel: "release", "beta", or "alpha"
[mod_policy]
# lithium = "beta"
# Pin a mod to prevent update notifications. Use /updatebeacon pin <modid>
[mod_pins]
Staged downloads and backups live under
.updatebeacon/staged/ and .updatebeacon/backup/.Notes
Mods are matched on Modrinth by default; CurseForge checks turn on once you set a
curseforge.api_key. Mods that aren't published on either platform are silently skipped.
More like this
7060303
7

Have something to say?