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.
MCLocalAuth
🛡️ MCLocalAuth
Minecraft Authentication Plugin with Integrated Discord Bot
[]() [
]()
---
🎯 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%%
---
<div align="center">
⭐ If this plugin is useful to you, don't hesitate to star it!
Made with ❤️ for the Minecraft community
</div>