jake bef3521770 subcommands and structure
- added run, save, and view subcommands
- WIP still
- moved encryption and decryption to util file
- a good start
2025-04-16 19:25:21 -04:00
2025-04-16 19:25:21 -04:00
2025-04-16 19:25:21 -04:00
2025-04-16 19:25:21 -04:00
2025-04-16 16:18:40 -04:00
2025-04-16 16:43:58 -04:00

mctl

mctl is a terminal-friendly remote connection client

Installation

Install mctl using golang

go install code.jakeyoungdev.com/jake/mctl@main #it is recommended to use a tagged version

Setup

Configuring mctl

mctl requires a one-time setup via the 'config' command, password is entered securely from the terminal

mctl config -s <serveraddress> -p <rconport>

Connecting to server

Once the client has been configured commands can be sent to the server using the 'login' command. This will authenticate you with the game server and enter the command loop, the session is logged out when the command loop is broken

mctl login #makes auth request to server with saved password

Sending commands

If login is successful the app will enter the command loop, which allows commands to be sent directly to the server until 'mctl' is sent. Commands are sent as-is to the server, there is no validation of command syntax within mctl

Logging into X.X.X.X on port 61695
Connected! Type 'mctl' to close
RCON@X.X.X.X /> list

There are 0 of a max of 20 players online:

Documentation

Commands

Command Description
config used to update the config file
login makes connection request to the server using saved configuration and enters command loop

Flags

config

Flag Shorthand Required Description
port p yes RCon port
server s yes RCon address

login

no flags

Configuration file

All configuration data will be kept in /home/.mctl.yaml or C:\Users\username\.mctl.yaml, passwords are encrypted for an added layer of security

Security

RCon is an inherently insecure protocol, passwords are sent in plaintext and, if possible, the port should not be exposed to the internet. It is best to keep these connections local or over a VPN

Development

this repo is currently in heavy development and may encounter breaking changes, use a tag to prevent any surprises

Description
Terminal-friendly Remote Console Client
Readme 107 KiB
v0.3.5 Latest
2025-04-24 18:24:30 +00:00
Languages
Go 100%