# ManticProtector

![](https://content.gitbook.com/content/CVqlaAAAoPORtPYtxCWn/blobs/79GTt2tYyy1iL1LPWBhC/image)

🛒 [mantic.dev/product/manticprotector](http://mantic.dev/product/manticprotector) - $10.00\
🔐 Requires ManticLib (free) and supports from 1.8 upwards

### Protector Plugin Overview

Introducing **ManticProtector**, a plugin made to help server owners keep control of their Minecraft servers. It prevents anyone from gaining OP or other high-level permissions without your approval, and helps protect your server from hackers or griefers attempting to cause disruption. If you want a simple, reliable way to keep your server safe, ManticProtector has you covered.

### Key features of ManticProtector

* **Full Server Protection**\
  \&#xNAN;*Automatically blocks unauthorised attempts to gain OP, administrator permissions, or dangerous permission nodes.*
* **Protected Users System**\
  \&#xNAN;*Specify trusted players (developers, owners, admins) who are exempt from OP and permission checks.*
* **Operator Checker**\
  \&#xNAN;*A background task that scans for unauthorised OPs and takes action instantly.*
* **Command Monitoring**\
  \&#xNAN;*Detects suspicious or blocked commands used by players and executes custom punishment commands.*
* **Console OP Protection**\
  \&#xNAN;*Prevents even the console from opping untrusted players—fully configurable.*
* **Permission & Group Blacklists**\
  \&#xNAN;*Automatically detects and removes blacklisted permissions or groups when a player joins or triggers an event.*
* **Discord Integration**\
  \&#xNAN;*Multiple configurable Discord webhook templates for:*
  * *Unauthorized OP detection*
  * *Blocked command alerts*
  * *Blacklisted permission logs*
  * *IP / Geo mismatches*
  * *Mass punishment alerts*
  * *LuckPerms-related changes*

### Developer Section (Protector API)

{% code title="Protector API" %}

```
» ProtectorAPI#isListedUser(UUID) - Checks whether the specified UUID has a whitelist entry inside config.yml.
» ProtectorAPI#isAuthorizedUser(Player|UUID) - Returns true if the player/UUID is registered and allowed to have OP status according to their configuration entry.
» ProtectorAPI#getUser(Player|UUID|OfflinePlayer) - Fetches the corresponding User object from the configuration. (Returns null if the player is not listed.)
» ProtectorAPI#hasElevatedPermissions(Player) - Checks if the listed user is allowed OP or has any whitelisted groups assigned.
» ProtectorAPI#getAuthorizedUsers() - Returns a list of all users defined in the config.
» ProtectorAPI#getAuthorizedOppedUsers() - Returns all configured users who are marked as allowedOp = true.
» ProtectorAPI#getOnlineAuthorizedUsers() - Returns a list of currently online players that have allowedOp = true.
» ProtectorAPI#getAuthorizedUsernames() - Returns the usernames of all authorized OP users.
» ProtectorAPI#hasWhitelistedGroup(Player, String) - Checks if the user has a specific whitelisted group.
» ProtectorAPI#hasAnyWhitelistedGroup(Player) - Returns true if the user has any whitelisted group.
» ProtectorAPI#getAddressHistory(Player) - Gets the stored (hashed) IP history for the user.
» ProtectorAPI#getGeoHistory(Player) - Gets the stored geolocation history for the user.
» ProtectorAPI#getOnlineAuthorizedUsersMap() - Returns a map of authorized online players: { playerName -> playerUUID }.
» ProtectorAPI#getUsersInGroup(String) - Returns all configured users assigned to a given whitelisted group.
```

{% endcode %}

### 📸 Media

[NextSetup Guide](https://docs.mantic.dev/broken-reference)
