CoreLink
CoreLink bridges Minecraft servers and external dashboards via secure REST/WebSocket APIs, featuring built-in moderation, live stats, and dynamic server commands.
Quick challenge
How far can you run before the mobs catch you?
Minecraft check
Confirm your run
Complete the quick check to get your code.
CoreLink
<b>The Ultimate Secure REST API and WebSocket Orchestration Layer for Minecraft Servers.</b>
---
➤ What is CoreLink?
CoreLink is an advanced, production-grade Minecraft server control layer designed for Paper API (1.21.1+). It acts as a bidirectional bridge between your Minecraft server infrastructure and external dashboards, Discord bots, or management panels. CoreLink provides extremely fast and secure access to REST API endpoints and real-time WebSocket communication.
Stop managing your server through clunky console panels or SSH—take full control of your community with a modern tech stack.
---
➤ Quick Links (Click to Navigate)
---
➤ Core Features
- Server Properties (SRV) Manager: Stream live console outputs, in-game player chat, and critical performance metrics directly to your external clients instantly. - Server Properties (SRV) Manager: Built with security first. Your endpoints are protected by Server Properties (SRV) Manager, IP whitelisting, strict rate limiting, and core brute-force protection. - Server Properties (SRV) Manager: A full, custom-built punishment system (`/mute`, `/ban`, `/warn`, `/freeze`, `/kick`) that permanently logs actions asynchronously to your Local storage or MongoDB database. - Server Properties (SRV) Manager: Modify `/view-distance`, `/simulation-distance`, and `/max-player` on the fly through in-game commands or the REST API. No server restarts required! - Server Properties (SRV) Manager: Seamlessly toggle server maintenance modes, update extreme PVP states, and manage world settings from anywhere securely.
---
➤ In-Game Commands
We've built a suite of dedicated commands to manage your server in real-time. Click below to expand the list.
Click to View All In-Game Commands
⚖️ Moderation
- `/mute <player> <duration|perm> [reason]` - Mute a player (e.g. 10m, 1h, perm). - `/unmute <player>` - Restore a player's chat. - `/warn <player> [reason]` - Send an official warning. - `/ban <player> [duration/perm] [reason]` - Ban a player (defaults to permanent). - `/unban <player>` - Remove a player's ban. - `/kick <player> [reason]` - Remove a player from the server. - `/freeze <player>` - Freeze a player in place. - `/unfreeze <player>` - Unfreeze a player.
⚡ Utility & Server Properties
- `/view-distance <distance>` - Change world view distance. - `/simulation-distance <distance>` - Change world simulation distance. - `/max-player <count>` - Set the dynamic player limit. - `/pvp <on/off>` - Toggle server-wide PVP. - `/pvp-world <world> <on/off>` - Toggle per-world PVP. - `/maintenance <on/off>` - Toggle server maintenance mode. - `/maintenance-whitelist <add/remove/list> <player>` - Manage maintenance access. - `/broadcast <message>` - Send a cross-server broadcast.
🛡️ CoreLink Admin
- `/cl-info` - View detailed plugin and node info. - `/cl-reload` - Reload plugin configurations. - `/cl-restart` - Restart the CoreLink Netty layer. - `/cl-connections` - View active WebSocket/API connections. - `/cl-help` - Display advanced help documentation.
---
➤ REST API & WebSockets
CoreLink is more than just a plugin—it's a developer-first networking layer. Click below to view major endpoints.
Click to View Major API Endpoints
<b>1. SERVER ACTIONS</b> (Base: `/api/server`)
*Requires `api_server` JWT scope or global whitelist* - `GET /health` - Returns node health status. - `GET /info` - Returns version, uptime, connections, and player counts. - `POST /restart` - Restarts the server. Body (Optional): `{"delay": 10, "reason": "Updating"}` - `POST /stop` - Stops the server gracefully. - `POST /kill` - Forcefully halts the JVM. - `POST /save-all` - Saves worlds and player data. - `POST /save-off` - Disables auto-save. - `POST /save-on` - Enables auto-save. - `POST /pvp` - Toggles PVP globally. - `POST /pvp-on / pvp-off` - Enables/Disables PVP globally. - `POST /maintenance` - Toggles whitelist/maintenance mode. - `POST /maintenance-whitelist` - Modifies whitelist. Body: `{"action": "add|remove", "player": "Name"}` - `POST /broadcast` - Send a server-wide broadcast message. - `POST /weather` - Sets server weather (clear/rain/thunder). - `POST /difficulty` - Sets world difficulty. - `POST /view-distance / /simulation-distance` - Update world scaling properties. - `POST /max-players` - Update the dynamic player limit.
2. MODERATION ACTIONS (Base: `/api/action`)
*Requires `api_action` JWT scope or global whitelist* - `POST /ban` - `{"player": "...", "reason": "...", "duration": "1d|perm"}` - `POST /unban` - `{"player": "..."}` - `POST /kick` - `{"player": "...", "reason": "..."}` - `POST /mute / /unmute` - Manage player chat access. - `POST /gamemode` - Change a player's gamemode. - `POST /tp` - Teleport a player to a destination. - `POST /freeze / /unfreeze` - Manage player movement. - `POST /warn` - Issue an official player warning.
3. CONSOLE COMMANDS (Base: `/api/console`)
*Requires `api_console` JWT scope or global whitelist* - `POST /send` - Dispatch a command. Body: `{"command": "time set day"}`
4. PLAYERS INFORMATION (Base: `/api/players`)
*Requires `api_players` JWT scope or global whitelist* - `GET /list` - Fetch all players (Name & UUID). - `GET /online / /offline` - Filter players by connection status. - `GET /banned` - View the server ban-list. - `GET /whitelist-list` - View whitelisted players. - `GET /{uuid_or_name}` - Returns detailed player profile (Health, Loc, GM). - `GET /{uuid_or_name}/stats` - Returns block/item interaction statistics. - `GET /{uuid_or_name}/history` - Returns session join/quit history. - `GET /{uuid_or_name}/inventory` - Returns full inventory (Armor, Enderchest, Base64). - `GET /{uuid_or_name}/location` - Returns world/coords/biome data. - `GET /{uuid_or_name}/permissions` - Returns active permission groups. - `GET /{uuid_or_name}/punishments` - Returns historical bans/mutes/warns. - `POST /{uuid_or_name}/message` - Sends a private message to the player.
🛰️ WebSocket Channels
`ws://:/console`
- Raw log/console streaming in real-time. - Multi-threaded log distribution.
`ws://:/chat`
- Global bi-directional communication bridge. - Features: Player messages, Join/Leave notices, Death messages, Advancement alerts.
`ws://:/stats`
- Private server health heartbeats. - Features: TPS & MSPT, Memory usage, Entity counts, Player telemetry.
---
➤ Supported Platforms & Requirements
| Platform / Tool | Supported Versions | |-----------------|--------------------| | Database | PaperMC 1.21 - 1.21.x | | Database | Java 21+ | | Database | LocalDB or MongoDB (Required for async storage) |
⚠️ NOTE: *This plugin requires a specific setup to configure the JWT secrets and MongoDB connection string. Please read the documentation before starting your server!*