Status Adapter
The status adapter controls what players see in the Minecraft server list — the MOTD, player count, version, and favicon. Each route can use a different status adapter.
Fixed Adapter (Default)
Section titled “Fixed Adapter (Default)”Returns a static, preconfigured status response.
routes:- hostname: "mc.example.net" status: type: fixed name: "My Network" description: "\"Welcome to our server!\"" favicon: "data:image/png;base64,..." enforces_secure_chat: true preferred_version: 777 min_version: 766 max_version: 1000Fields
Section titled “Fields”| Field | Type | Default | Description |
|---|---|---|---|
name | string | "Passage" | Server name displayed in the version field |
description | string | "\"Minecraft Server Transfer Router\"" | MOTD as a JSON text component |
favicon | string | (built-in icon) | Base64-encoded 64x64 PNG (data:image/png;base64,...) |
enforces_secure_chat | bool | true | Whether the server enforces secure chat |
preferred_version | integer | 777 | Protocol version shown in the server list |
min_version | integer | 0 | Lowest protocol version reported as compatible |
max_version | integer | 1000 | Highest protocol version reported as compatible |
MOTD Formatting
Section titled “MOTD Formatting”The description field uses Minecraft’s JSON text component format:
# Simple textdescription: "\"Welcome!\""
# Colored textdescription: '{"text":"Welcome!","color":"gold"}'
# Multi-line with formattingdescription: '{"text":"","extra":[{"text":"My Network\n","color":"gold","bold":true},{"text":"Join now!","color":"gray"}]}'Favicon
Section titled “Favicon”Generate a favicon from a 64x64 PNG image:
echo -n "data:image/png;base64,$(base64 -w 0 server-icon.png)"Protocol Versions
Section titled “Protocol Versions”Some reference points:
| Version | Protocol |
|---|---|
| 26.3 | 777 |
| 26.2 | 776 |
| 26.1 | 775 |
| 1.21.11 | 774 |
| 1.21.9 | 773 |
| 1.21.6 | 771 |
| 1.21.2 | 768 |
| 1.21 | 767 |
| 1.20.5 | 766 |
766 (1.20.5) is the lowest version that supports the transfer packet. See the
protocol version list on the
Minecraft Wiki for the current, complete table.
HTTP Adapter
Section titled “HTTP Adapter”Fetches status from an HTTP endpoint. Responses are cached to avoid hitting the endpoint on every server list ping.
routes:- hostname: "mc.example.net" status: type: http address: "https://api.example.com/minecraft/status" cache_duration: 60Fields
Section titled “Fields”| Field | Type | Default | Description |
|---|---|---|---|
address | string | "http://localhost:8080" | HTTP endpoint URL |
cache_duration | integer | 60 | Cache duration in seconds |
Endpoint Requirements
Section titled “Endpoint Requirements”The endpoint must accept a GET request and return JSON matching the Minecraft status response format:
{ "version": {"name": "My Network", "protocol": 777}, "players": {"online": 42, "max": 100, "sample": []}, "description": "{\"text\":\"Welcome!\",\"color\":\"gold\"}", "favicon": "data:image/png;base64,...", "enforcesSecureChat": true}Only version is required. players, description, favicon and enforcesSecureChat may be omitted or null.
gRPC Adapter
Section titled “gRPC Adapter”Delegates status generation to an external gRPC service for full control over the response.
routes:- hostname: "mc.example.net" status: type: grpc address: "http://status-service:50051"Fields
Section titled “Fields”| Field | Type | Default | Description |
|---|---|---|---|
address | string | "" | The gRPC service endpoint URL |
gRPC Service Definition
Section titled “gRPC Service Definition”The service must implement the Status service from status.proto:
service Status { rpc GetStatus(StatusRequest) returns (StatusResponse);}The StatusRequest includes:
client_address(Address): The client’s network addressserver_address(Address): The address the client connected toprotocol(uint64): The client’s Minecraft protocol version
See the gRPC Protocol Reference for full message definitions and the Custom gRPC Adapters guide for implementation examples.
Choosing a Status Adapter
Section titled “Choosing a Status Adapter”| Use Case | Recommended Type |
|---|---|
| Static server with fixed MOTD | fixed |
| Dynamic player count or rotating MOTD | http |
| Complex logic (per-player status, A/B testing) | grpc |