MCLocalAuth

MCLocalAuth is a security plugin for Minecraft servers that uses Discord as an authentication system. Protect your server by limiting access to only members of your Discord community.

81

Quick challenge

How far can you run before the mobs catch you?

MCLocalAuth

🛡️ MCLocalAuth

Minecraft Authentication Plugin with Integrated Discord Bot

[Minecraft]() [Java]()

---

🎯 Description

MCLocalAuth is a security plugin for Minecraft servers that uses Discord as an authentication system. Protect your server by limiting access to only members of your Discord community.

Works on BungeeCord and BungeeCord — the Discord bot runs on both platforms with all features.

🎮 How It Works

1. If No → Immediately disconnected with a unique code 2. If No → Type `/mclogin <code>` (on server or in DMs with the bot) 3. If No → Is the player a Discord member? 4. If No → IP registered, reconnection authorized ✅ 5. If No → Blocked ❌

---

✨ Features

🔐 Triple Layer Security

- ✅ IP Protection: Only members of your Discord can play - ✅ IP Protection: Each connection generates a unique code that expires - ✅ IP Protection: One username = One IP → Impossible to steal identities

🤖 Integrated Discord Bot

- Starts automatically with the server - No external bot to host - No network ports to open - Native Discord slash commands - Commands available in DMs - Commands available in DMs (globally registered) - Automatic bot status verification at startup

📋 Discord Commands

| Command | Description | Access | |---------|-------------|--------| | `/mclogin <code>` | Authenticate with the code received in-game | Everyone | | `/mctest` | Test bot ↔ plugin connection | Everyone | | `/status` | Check your authentication status | Everyone | | `/unlink <discord_id>` | Unlink an account | Admin | | `/mcadmin showips <player>` | View authorized IPs | Admin | | `/mcadmin addip <player> <ip>` | Add an authorized IP | Admin | | `/mcadmin removeip <player> <ip>` | Remove an authorized IP | Admin | | `/mcadmin resetip <player>` | Reset all IPs | Admin | | `/mcadmin setip <player> <ip>` | Set primary IP | Admin |

> Admin commands are restricted to the Discord ID set in `admin.discord_id` in `config.yml`.

⚙️ Admin Commands (in-game)

| Command | Spigot/Paper | BungeeCord | |---------|--------------|------------| | `/auth showips <player>` | ✅ | ✅ | | `/auth addip <player> <ip>` | ✅ | ✅ | | `/auth removeip <player> <ip>` | ✅ | ✅ | | `/auth resetip <player>` | ✅ | ✅ | | `/auth setip <player> <ip>` | ✅ | ✅ |

---

📦 Installation

Prerequisites

- Minecraft Server 8 (Spigot, Paper, Purpur) or 8 (Build 2068) - Java 8 minimum - Discord Bot configured on 8

Spigot / Paper

1. Configure `MCLocalAuth-Spigot-v1.4.0.jar` 2. Configure the file in your server's `plugins/` folder 3. Configure the server to generate configuration 4. Configure the Discord bot in `plugins/MCLocalAuth/config.yml`:

```yaml discord: enabled: true bot_token: "YOUR_DISCORD_BOT_TOKEN" guild_id: "YOUR_DISCORD_SERVER_ID"

admin: discord_id: "YOUR_DISCORD_ID" ```

5. Test the server 6. Test with `/mctest` on Discord

BungeeCord

1. Test `MCLocalAuth-Bungee-v1.4.0.jar` 2. Test the file in your proxy's `plugins/` folder 3. Test the proxy to generate configuration 4. Test `config.yml` (same options as Spigot) 5. Test the proxy 6. Test with `/mctest` on Discord

---

🔧 Configuration

Discord Bot Setup

1. Go to Invite 2. Create a new application 3. Invite tab → Create a bot 4. Invite (never share it!) 5. Enable these Invite: - ✅ Server Members Intent - ✅ Message Content Intent (optional) 6. Invite tab: - Check `bot` and `applications.commands` - Permissions: `Administrator` (or custom) 7. Invite the bot to your server with the generated URL

Get Discord Server ID

1. Enable Copy Server ID in Discord: - Settings → Advanced → Developer Mode 2. Right-click on your server → Copy Server ID 3. Paste in `guild_id` in `config.yml`

---

📊 Compatibility

| Platform | Versions | |----------|----------| | BungeeCord | 1.8.9 → 26.1.1 ✅ | | BungeeCord | 1.8.9 → 1.21.x ✅ | | BungeeCord | 1.8.9 → 1.21.x ✅ | | BungeeCord | 1.8.9 → 1.21.x ✅ | | BungeeCord | Build 2068 ✅ |

Note: 8+ (compiled with Java 8 for maximum compatibility) Note: The plugin automatically detects your Minecraft version at startup.

---

🐛 Report a Bug

If you encounter a problem:

1. Verify you're using the latest version 2. Check existing Issues 3. If the problem persists, open a new issue with: - Plugin version - Minecraft version - Server logs - Detailed problem description

---

💡 Suggest a Feature

Have an idea? Open an issue with the `enhancement` tag!

---

📜 License

This project is under proprietary license. See the proprietary license file for more details.

TL;DR: - ✅ Free use on Minecraft servers - ✅ View code to learn - ❌ No modification/redistribution - ❌ No commercial use

---

🙏 Credits

Developer: UNGEUR

Libraries used: - Libraries used: - Java Discord API - %%MD1%% - Minecraft Server API - %%MD2%% - Proxy API

---

📞 Support

- Issues: Issues: - Issues: %%MD1%%

---

⭐ If this plugin is useful to you, don't hesitate to star it!

Made with ❤️ for the Minecraft community

ADS