uMRC is a full-featured, cross-platform Multi-Relay Chat client for BBSes. It runs as a native door on your system, letting you access Multi-Relay Chat without having to install and maintain a Mystic BBS instance or Python. In other words, as long as your BBS is capable of running DOOR32.SYS doors, then you and your users can participate in MRC.
It should be compatible with any DOOR32.SYS capable BBS such as EleBBS, WWIV, Synchronet, Mystic, and others. It runs on Windows 7 and later.
If you use NetFoss to start up your DOS-based BBS, then the NFU utility bundled with NetFoss should run the uMRC Client. As of this writing, Renegade and Oblivion/2 have been confirmed.
Pre-compiled binaries are also available for Linux, FreeBSD, and macOS, or may be compiled from source (see build.txt).
- Secure SSL MRC host connections
- Automatic host reconnection & rejoin
- TAB username auto-completion
- Password masking (e.g.:
/identify ********) - Mention counter
- Built-in chat and mention history scrollback
- Pipe code color support
- CTCP command support
- Editable themes
- Twit filter
- Local BBS-less mode
- Extended chat input beyond standard 140 characters
- Support for termsizes beyond 80x25 (dropfile dependent)
- setup: Setup utility
- umrc-bridge: MRC host connection program (multiplexer)
- umrc-client: MRC Client door
- [screens]: Subdirectory containing ANSI & text files
- intro.ans: Intro/main menu & status screen
- help.txt: Help file showing basic chat commands
- helpctcp.txt: Help file on CTCP command usage
- helptwit.txt: Help file on twit filter management
- [themes]: Subdirectory containing ANSI files
- *.ans: ANSI theme files
Refer to the readme.txt file inside the archive for files specific to your platform.
This is a condensed set of basic install steps. For more detailed info, check the readme.txt file included in the ZIP archive for your platform.
If you wish to build your own binaries, refer to the build.txt file for basic instructions.
⚠️ If you have any existing MRC process currently running, stop it at this time. The MRC host generally does not play well with concurrent connections from the same BBS.
-
Place all files to their own directory, keeping the structure the same as shown above in the list of files included.
-
Run setup, and press
1to begin.For the first 3 prompts, you can simply press enter to accept the default values:
a. The MRC host address defaults to na-multi.relaychat.net, or you can select one of the other federated servers for your region. If in the future the MRC host address changes, it can be entered here.
b. SSL is recommended for secure connections to the MRC host and should be left enabled, but can optionally be disabled if needed.
c. The MRC host port number defaults to 5001 if using SSL, or 5000 if using a standard socket.
The remaining prompts are about your BBS. Pipe color codes 01 - 23 are allowed in the fields as indicated by setup.
Your settings will be saved to a file called mrc.cfg.
-
Run umrc-bridge. This program is responsible for maintaining a connection to the MRC host and passing chat traffic back and forth between the host and your BBS. It must run continuously in order for umrc-client to work, so it's recommended to have this program launch on system startup. It will make automatic reconnection attempts as needed.
Check the readme.txt file for a complete description of available umrc-bridge options.
-
Set up a menu item to launch a native door on your BBS.
DOOR32.SYS is the standard drop file to use in most cases, but other drop file formats like DOOR.SYS or CHAIN.TXT may be used and may actually be preferable for reasons explained further below.
The basic DOOR32.SYS command line syntax is:
Windows:
umrc-client -D c:\path\to\DOOR32.SYSLinux & macOS:
./umrc-client -D /path/to/DOOR32.SYS
❗NOTE to Linux Users:
It has been observed that using the DOOR32.SYS drop file type with this door can lead to user-input issues on Mystic under Linux. If DOOR32.SYS does not work properly with your BBS type, then use DOOR.SYS instead.
Also refer to your BBS software documentation on whether the
./prefix needs to be included.
If you get an error saying, "Invalid config. Run setup", it means you either did not run Setup, or you're not launching umrc-client from its own directory. On certain BBSes (like Mystic) it is necessary to use a batch file or bash script to launch the door.
On Windows, include the -SILENT option to prevent the local Windows GUI
from popping up while the door is running. This is highly recommended
since umrc-client takes a noticeable performance hit when outputting
to both the BBS and its own local Window, especially while paging through
the chat scrollback.
umrc-client -D c:\path\to\DOOR32.SYS -SILENTTo run the client locally from the command line, use the -L option:
umrc-client -LNOTE: It will only run as user number 1 (Sysop) in local mode.
umrc-client honors the termsize reported by the drop file. Some drop files, like CHAIN.TXT report both the terminal's available columns and rows to the door, allowing umrc-client to run at any termsize, such as 132x37.
If you're using any drop file type other than DOOR32.SYS, you may also need
to pass the socket handle using the -SOCKET parameter. Check your BBS
documentation for usage.
umrc-client -D c:\path\to\CHAIN.TXT -SILENT -SOCKET <socket_handle>The standard termsize of 80x23 gets used by default if no row and/or column size information is given in the drop file, as well as in local mode.
When a user first launches the uMRC client door, they'll be given the option to confirm the user name that was detected, or enter a custom one (in case the BBS passed the user's real name to the door). After the user confirms their name, they'll be given a short list of options to configure, after which point they'll be taken to the main menu. This is explained further in readme.txt.
User settings are saved the userdata subdirectory. One file per user, named using their alias or username on the BBS. If a user's settings ever need to be reset, simply delete (or rename) the file associated with them.
Now that your BBS offers MRC, here's where the most action is!
- Saturdays at 21h00 UK / 16h00 Eastern / 13h00 Pacific
- Host: MeaTLoTioN
- More info at: https://erb.pw
Type /meetups in chat for a current list of meetups.
uMRC is written in C, and was developed and compiled on Windows using Microsoft Visual Studio Community 2022. The 'Nix binaries are compiled using gcc.
uMRC makes extensive use of threading, both in umrc-bridge and umrc-client. Separate threads are used for establishing connections to the MRC host, listening for and handling client connections from local clients, and handling user input while displaying incoming messages to the output window.
Secure SSL sockets are implemented using LibreSSL, a variant of OpenSSL. SSL is used only from the umrc-bridge to the MRC host, while local umrc-client connections to the umrc-bridge are made using standard TCP/IP sockets, using the same port number as selected in the Setup program. The MRC host's SSL cert is validated against the host name URL, but this validation step can be skipped by specifying -S on the command line when starting umrc-bridge.
You should NOT have ports 5000/5001 open on your firewall/router, since umrc-client makes OUTBOUND requests to the MRC host on ports 5000/5001. If you leave these ports open on your end, then you may occasionally see umrc-bridge log odd messages, caused by outside HTTP requests to your system.
Thanks to StackFault at The Bottomless Abyss BBS, MRC HQ!
- https://bbs.bottomlessabyss.net
- telnet://bbs.bottomlessabyss.net:2023
- ssh://bbs.bottomlessabyss.net:2222
StingRay of A-Net Online
- https://a-net-online.lol/bbs/
- telnet://a-net-online.lol
- ssh://a-net-online.lol
X-Bit of x-bit.org
- https://x-bit.org
- telnet://x-bit.org
- ssh://x-bit.org:22222
Exodus of The Titantic BBS
- https://www.rgbbs.info
- telnet://ttb.rgbbs.info
Shurato of Shurato's Heavenly Sphere
- https://shsbbs.net
- telnet://shsbbs.net
If you haven't yet decided on which MRC client to set up on your BBS, have a look at this alternative:
Also check out the MRC Clients Directory for a current listing of actively developed clients: https://status-na-multi.relaychat.net/clients
2026 truly became the year of the custom MRC client, with more options now available than ever before!
See you in chat!