8d7588ed183b117ddee719ea4c91c2fa8ba1f877
mcstatus
Small Go library for querying Minecraft Java and Bedrock server status.
Features
- Java status ping
- Java full query
- Bedrock RakNet ping
- Bedrock full query
- Optional SRV lookup
- Simple MOTD cleanup helper
Install
go get github.com/VexoraDevelopment/mcstatus
CLI
The repository also ships a small CLI in cmd/mcstatus.
Build locally:
go build -o mcstatus ./cmd/mcstatus
Examples:
mcstatus mc.hypixel.net
mcstatus java -json mc.hypixel.net
mcstatus bedrock -query play.example.com:19132
mcstatus auto -pretty localhost
mcstatus java -motd-raw mc.hypixel.net
If you prefer prebuilt binaries, use the files attached to GitHub Releases.
Quick Start
package main
import (
"fmt"
"time"
"github.com/VexoraDevelopment/mcstatus"
)
func main() {
client := mcstatus.NewAll(3 * time.Second)
info, err := client.Java.Connect("hypixel.net", 25565)
if err != nil {
panic(err)
}
fmt.Println(info.Edition)
fmt.Println(info.Address, info.Port)
fmt.Println(info.Version)
fmt.Println(info.Online, "/", info.Slots)
fmt.Println(info.MOTD)
}
Packages
github.com/VexoraDevelopment/mcstatusgithub.com/VexoraDevelopment/mcstatus/javagithub.com/VexoraDevelopment/mcstatus/bedrockgithub.com/VexoraDevelopment/mcstatus/text
Releases
Pushing a tag like v1.0.1 triggers GitHub Actions and publishes release archives for:
- Windows
- Linux
- macOS
using the mcstatus CLI binary from cmd/mcstatus.
Notes
ServerInfois a plain struct and can be stored however you want.
Description
Languages
Go
100%