Add Your Server
Step by step, from a fork to a published listing.
This guide is for server owners. You need a GitHub account and Git. The local check needs Node.js 22.
Before you start, confirm that you own the server, or have its owner's permission to submit its information and images. Read licensing.
1. Fork and clone
Fork OwlClient/server-media on GitHub, then clone your fork:
git clone https://github.com/<your-user>/server-media.git
cd server-media
git checkout -b add/my-server2. Choose an id
The id is permanent. It is the directory name, and it is part of the public URLs. Use lowercase letters, digits and single hyphens, between 2 and 32 characters. See server ids.
3. Create the directory and the metadata
servers/
└── my-server/
├── metadata.json
├── icon.png
├── logo.png
├── background.jpg
└── banner.webpCreate servers/my-server/metadata.json. The example below is a complete, valid file for a fictional server.
{
"schemaVersion": 1,
"id": "my-server",
"name": "My Server",
"description": "A survival and PvP network with weekly events and a friendly community.",
"addresses": ["play.my-server.net"],
"primaryAddress": "play.my-server.net",
"minecraftVersions": ["1.8.9", "1.21.11"],
"gameTypes": ["PvP", "Survival"],
"primaryColor": "#2E6CF0",
"website": "https://my-server.net",
"socials": {
"discord": "https://discord.gg/my-server"
}
}Every field is explained on the metadata page.
4. Add the images
All images are optional. Use the exact file names and the sizes in media specifications. An image must be real PNG, JPEG or WebP data, and must match its file extension.
5. Check locally
npm ci
npm run validateA passing run prints Server media validation passed. A failing run prints each problem with the file and field that caused it:
servers/my-server/metadata.json
Field "addresses[0]": "Play.My-Server.net" must be lowercase (use "play.my-server.net")6. Commit, push and open a pull request
git add servers/my-server
git commit -m "feat(servers): add my-server"
git push -u origin add/my-serverOpen a pull request against main and complete the template. It asks for the server name, addresses, website, Discord, owner, and a few confirmations.
7. Review and publication
Automated validation runs on your pull request. A maintainer then reviews the content and the rights statements. Once the pull request is merged, the catalog is rebuilt and published. Clients refresh the catalog within minutes.
Updating or removing your server
To change a server, edit its files and open a new pull request. Keep the id. To remove a server, open a pull request that deletes its directory and retires its id. See pull requests.