
Matrix Bridge
Bridge Minecraft and Matrix chats together!
About this Mod
👉 If you need any assistance, please reach out in our Matrix Room
🔥 Need a version for Forge? Check out MC Matrix Bridge!
⚠️ Bridge versions v1.4 and prior are incompatible with Fabric Language Kotlin (FLK) versions newer than 1.13.3+kotlin.2.1.21, throwing a 'NoClassDefFoundError'. FLK is not required starting with v1.4.1.
☕ Bridge versions for 'Better Than Adventure' require Java 11 or newer, and will crash on Java 8. Additionally, a dependency override for Fabric Language Kotlin is necessary for bridge versions v1.4 and prior. More information available below.
Matrix Bridge
Matrix Bridge allows users to bridge a Minecraft server's chat with a Matrix room. This mod enables Matrix users to talk with Minecraft players, without logging into the Minecraft world.
This bridge will send server start, server stop, player join, player leave, player death and player chat messages. This bridge also includes bridge commands '!list', '!ping' and '!invite', which allows Matrix-side users to retrieve a player list, ping the server and whitelist a player respectively.
This mod uses password-based login, and supports encrypted rooms and session verification. Additionally, a YAML-based configuration file is available, alongside support for various databases including H2 (default), SQLite, MariaDB and PostgreSQL.
This mod will be ported to different game versions as requested. Should you wish to submit feedback, request a new port or otherwise need general assistance, please join our support room.
Matrix Bridge utilises the Trixnity Matrix SDK, and depends on the Fabric Language Kotlin mod.
Configuration
Spoiler
config.yaml
# +---------------------------------------------------+
# | |
# | Matrix Bridge Configuration |
# | |
# +---------------------------------------------------+
# Please ensure that all values follow the YAML standard.
# Indentation is important! Tabs are not allowed.
# Refer to "https://www.tutorialspoint.com/yaml/" for a detailed explanation.
#
# Improperly set values will default. Integers -> 0, Booleans -> false, Verify Type -> DISABLED, Database Type -> H2.
# Please ensure your values are set properly!
#
# This file is never modified. This file is only written to when it is being generated.
# This file is comment-safe. They will not disappear.
#
# If you need assistance, please join our Matrix room "https://matrix.to/#/#sophie.projects:aenead.net".
# Thank you! <3
# DO NOT MODIFY. Used to detect when you need to update config.
version: 2
# Reveals Trixnity log messages. Useful for debugging.
verbose: false
# +---------------------------------------------------+
# | |
# | Account |
# | |
# +---------------------------------------------------+
# Settings used to sign in to the bot account.
account:
# Synapse URL. Supports delegation.
homeserver: "https://matrix.example.org"
# Account login username. Localpart of user's MXID.
username: "user"
# Account login password. Does not support tokens or SSO.
password: "pass"
# Bridge session device name.
device_name: "Matrix-Minecraft Bridge"
# Internal ID of room to send messages to.
room: "!sdfDsdfsA:matrix.example.org"
# +---------------------------------------------------+
# | |
# | Verification |
# | |
# +---------------------------------------------------+
# Settings used to enable session verification and encryption.
verification:
# Either KEY, PASSPHRASE or DISABLED. All other values will be rejected.
type: "KEY"
# Token (either a key or passphrase) to verify bridge session.
token: "AaAA aaAa AAaa..."
# +---------------------------------------------------+
# | |
# | Database |
# | |
# +---------------------------------------------------+
# Settings used for database configuration.
database:
# Either H2, SQLITE, MARIADB or POSTGRESQL. All other values will be rejected. Default is H2.
type: "H2"
# Name of database. If type is H2 or SQLITE, represents file name. Otherwise, represents database to connect to.
name: "database"
# Host and port to connect to database.
hostname: "localhost:3306"
# Database login username. Only used with MARIADB and POSTGRESQL.
username: "user"
# Database login password. Only used with MARIADB and POSTGRESQL.
password: "pass"
# +---------------------------------------------------+
# | |
# | Commands |
# | |
# +---------------------------------------------------+
# Settings for bridge commands.
commands:
# '!list' command. Lists online players. Supported placeholders: %players%
list:
format: "📜 Online players: %players%"
enabled: true
# '!ping' command. Bridge prints message to ensure connection.
ping:
format: "🏓 Pong!"
enabled: true
# '!invite' command. Whitelists a player. Supported placeholders: %player%
invite:
format:
success: "🔵 '%player%' has been whitelisted!"
error: "🔵 '%player%' could not be found. Usage: !invite <username>"
already: "🔵 '%player%' is already whitelisted!"
enabled: false
# Message sent to Matrix when a performed command is invalid. Supported placeholders: %commands%
invalid_command: "⛔ Command not found! Available commands: %commands%"
# Message sent to Matrix when a performed command is disabled.
disabled_command: "⛔ Command disabled! Please contact an administrator."
# +---------------------------------------------------+
# | |
# | Messages |
# | |
# +---------------------------------------------------+
# Message formats! Some messages use placeholders. Available placeholders are stated in the comments.
# Available placeholders: %player%, %message%, %commands%
messages:
# Message sent when the server starts.
start:
format: "❇ Server started"
enabled: true
# Message sent when the server stops.
stop:
format: "🛑 Server stopped"
enabled: true
# Chat message format as viewed in Minecraft. Supported placeholders: %player%
chat_matrix_to_minecraft:
format: "[§e%player%§r] "
enabled: true
# Chat message format as viewed on Matrix. Supported placeholders: %player%
chat_minecraft_to_matrix:
format: "<%player%> "
enabled: true
# Message sent to Matrix when a player joins the server. Supported placeholders: %player%
player_join:
format: "🔹 %player% joined the game"
enabled: true
# Message sent to Matrix when a player quits the server. Supported placeholders: %player%
player_quit:
format: "🔹 %player% left the game"
enabled: true
# Message sent to Matrix when a player dies. Supported placeholders: %message%
player_death:
format: "🪦 %message%"
enabled: true
# Message sent to Matrix when a player makes an advancement. Supported placeholders: %player%, %advancement%
player_advancement:
format: "🎉 %player% has made the advancement '%advancement%'!"
enabled: true
Better Than Adventure
Please ensure that you are using Java 11 or newer, as this mod will crash on Java 8.
As of 2025-08-06, a dependency override for Fabric Language Kotlin (FLK) is necessary. FLK requires Fabric Loader 0.16.9+, which is unavailable for BTA Babric. Such a new version of FLK is required to support the most recent Matrix features (such as room v12).
Please place the following file in your server's config directory.
Spoiler
fabric_loader_dependencies.json
{
"version": 1,
"overrides": {
"fabric-language-kotlin": {
"-depends": {
"fabricloader": "IGNORED"
}
}
}
}
Available Versions
How to Install Matrix Bridge on Your Server
Order Server
Order a Minecraft Java server with at least 3 GB RAM (4 GB recommended).
Set bta-babric Loader
In the panel under "Egg", select the bta-babric loader and matching Minecraft version (1.21.8).
Install Mod
Open the mod browser in the dashboard and search for "Matrix Bridge". Click "Install" – done! Alternatively, upload the .jar via SFTP to the /mods folder.
Compatibility
Mod Loaders
Minecraft Versions
1.21.8, 1.21.7, 1.21.6 (+16 more)
Server-side
✓ RequiredRecommended RAM
4 GB(min. 3 GB)Frequently Asked Questions
Matrix Bridge server crashes on startup – what to do?
Most common cause: wrong bta-babric version or insufficient RAM. Check the server log (latest.log) for "OutOfMemoryError" or "Mixin" errors. With Mado Hosting: ensure at least 3 GB RAM is allocated and the loader matches the mod version (1.21.8). You can switch loaders with one click in the panel.
Is Matrix Bridge compatible with bta-babric and fabric?
Matrix Bridge officially supports bta-babric, fabric for Minecraft 1.21.8, 1.21.7, 1.21.6. The Mado dashboard automatically detects incompatible loader combinations.
Server lagging with Matrix Bridge – how to optimize performance?
Recommended RAM: 4 GB (per 8 players). Use /spark profiler to check if Matrix Bridge consumes the most tick time. Common fixes: reduce server view-distance to 8-10, install "performant" or "starlight" as supplementary mods on Forge. With Mado Hosting, your server runs on NVMe SSDs with dedicated CPU cores for minimal latency.
Similar Mods
Rent Modded Server
Install Matrix Bridge with just one click on your server.