Server description¶
A per-server caption shown under the server name instead of the default protocol label (VLESS | TCP | Reality). Use it to say something the label can't — Netflix / streaming, for gaming, 10 Gbps. Unlike the keys above it is not sent per subscription: it rides with each individual server.
🔒
Honored only while the provider id is active — the same gating as s-fragment and s-dns. Without an active provider id the app falls back to the protocol label.
| Rule | Value |
|---|---|
serverDescription |
Field name |
| base64 | Encoding in links (plain text in JSON configs) |
In share links¶
Inside the #fragment, after the title, separated by ?:
vless://uuid@host:443?security=reality&type=tcp#🇳🇱 Netherlands?serverDescription=TmV0ZmxpeCAvIHN0cmVhbWluZw==
The same syntax works for vless://, trojan://, ss:// and socks://.
In vmess links¶
A field inside the base64-encoded JSON body:
{ "ps": "🇳🇱 Netherlands", "add": "host", "port": "443", "serverDescription": "TmV0ZmxpeCAvIHN0cmVhbWluZw==" }
In JSON configs¶
Inside a meta object next to remarks — here the value is plain text, not base64:
{
"remarks": "🇳🇱 Netherlands",
"meta": { "serverDescription": "Netflix / streaming" },
"outbounds": [ … ]
}
In links, a value that isn't valid base64, or decodes to nothing, is ignored — the server keeps its protocol label rather than showing broken text.