An empty server list was sent as null, so the page threw on .length and
showed only the loading placeholder. The API now always returns a list,
the page tolerates null, and tests cover the empty config and the token.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>