RCON Client for Game Servers
Tempest is a GUI RCON client for Minecraft, ARK, Rust, CS2, Source-engine, and Factorio — manage game servers from the same SSH client UI.
Tempest is a GUI RCON client for Minecraft, ARK, Rust, CS2, Source-engine, and Factorio — manage game servers from the same SSH client UI.
Tempest is a GUI RCON client for game servers. Add a Minecraft, ARK, Rust, Counter-Strike 2, Source-engine, Factorio, or any other RCON-speaking server as a connection, and you get the same tabbed interface as your SSH hosts — only the channel is the Source RCON protocol instead of SSH.
If you've been juggling separate Minecraft Console apps, ARK admin tools, and Source RCON tools per game, Tempest replaces all of them with one client.
Click + → RCON.
Set host and port (Minecraft Java default 25575, Source-engine default 27015).
Set the RCON password (matches rcon.password in server.properties or your engine's equivalent).
Save and connect.
The tab opens with a command prompt. Type any RCON command supported by your server.
Minecraft Java:
list # list online players
kick PlayerName Goodbye
ban PlayerName
op PlayerName
say Server restart in 5 min
stop # graceful shutdownSource / CS2:
Factorio:
As of Tempest 3.6+, RCON is a native Rust implementation (no shell-out, no mcrcon binary required). Same client works identically on macOS, Windows, and Linux.
RCON connections support the same proxy modes as SSH:
HTTP CONNECT
SOCKS5
ProxyCommand
Use this if your game server is behind a corporate firewall or a VPN gateway you reach through cloudflared access or a Tailscale-like tunnel.
Most homelab / indie hosting setups use the same machine for an SSH-managed Linux box and the Minecraft / ARK server it hosts. Tempest lets you keep them in adjacent tabs — type tail -f /var/log/whatever on the SSH side, run say Server restart in 5 min on the RCON side.
Connect to Telnet servers — same Rust networking layer
Tempest Push Notifications — alert when a player joins or a server crashes (via scripted snippets)
status
say Welcome
mp_restartgame 1
changelevel de_dust2/players
/silent-command game.print("hello")