Protectcord
ModMIT

Protectcord

Protectcord is an anti VPN/Proxy plugin it uses an advanced API to check if an IPv4/IPv6 is a VPN or Proxy!

2.2K
Downloads
14
Followers
3 months ago
Updated
📦
30
Versions

📖About Protectcord

ProtectCord - Advanced IP Protection for Minecraft

Protect your Minecraft server from VPNs, proxies, bots, and malicious connections with real-time IP intelligence.

ProtectCord uses advanced IP reputation data to automatically block suspicious connections before they can harm your server. Perfect for preventing alt accounts, bot attacks, and maintaining a trustworthy player base.

✨ Milestones

  • 1,100 downloads on modrinth
  • 100,000 Protectcord API requests
  • 28 unique minecraft servers running our minecraft mod/plugin concurrently!
  • 99 concurrent players!
  • 1,000 unique discord users verified
  • 3,000+ unique api requests per day!
  • 555 Discord Guilds using @ProtectCord#0253
  • Watching over 120,000+ discord users

bStats:

https://bstats.org/plugin/bukkit/Protectcord/24623


✨ Key Features

IP Protection

  • 🛡️ Real-Time IP Verification - Every connection is checked against our threat intelligence database
  • 🚫 Block VPNs & Proxies - Stop ban evaders and alt accounts in their tracks
  • ⚠️ Risk-Based Blocking - Configurable threat levels from LOW to CRITICAL
  • 🌐 Geo-Blocking - Block or whitelist specific countries/regions
  • Smart Whitelist System - Bypass protection for trusted players, IPs, or UUIDs

Moderation System

  • 3-Strike Warning System - Automatic escalation from warning to ban
  • 🔨 Player Warnings - Track and manage player behavior violations
  • 🚨 Auto-Ban System - Automatically ban players after 3 warnings
  • 📋 Warning History - View complete warning logs for any player
  • 🔒 Ban Management - Manual ban/unban commands with persistent storage

Platform & Performance

  • 🌐 Multi-Platform Support - Works on Paper, Spigot, Folia, BungeeCord, Velocity, and Forge
  • 📢 Discord Integration - Get real-time alerts when suspicious players are blocked
  • Lightweight & Fast - Async IP checks won't slow down your server
  • 📊 Built-in Statistics - Monitor your API usage and blocked connections

🎮 Supported Platforms

Platform Versions Best For
Paper 1.13 - 1.21+ Modern optimized servers (recommended)
Spigot 1.8.8 - 1.21+ Legacy servers and vanilla Spigot
Folia 1.19+ High-performance multithreaded servers
Velocity 3.0+ Modern proxy networks (recommended)
BungeeCord 1.8.8 - 1.21+ Proxy networks (Waterfall compatible)
Forge 1.20.1+ Modded servers (server-side only)

📥 Quick Setup

1️⃣ Get Your Free API Key

  1. Visit protectcord.com
  2. Create a free account
  3. Generate an API key from the dashboard
  4. Free API key includes 32 requests per minute!

2️⃣ Install the Plugin

  1. Download the correct version for your platform from Modrinth
  2. Drop the JAR into your plugins/ folder
  3. Start your server (config files will generate automatically)
  4. Add your API key to plugins/ProtectCord/config.yml
  5. Run /protectcord reload or restart
  6. Done! Your server is now protected ✅

💡 For Network Owners

Running a BungeeCord or Velocity proxy? Install only on the proxy for network-wide protection. This saves API calls and protects all your backend servers with one installation!


⚙️ Configuration

Simple, powerful configuration with sensible defaults:

# Your ProtectCord API key
api-key: "YOUR_API_KEY_HERE"

# What to block
enable-ip-check: true
block-vpn: true           # Block VPN connections
block-proxy: true         # Block proxy servers
block-datacenter: false   # Block datacenter IPs (hosting providers)
block-bogon: true         # Block invalid/bogus IPs

# Risk threshold - how strict should blocking be?
# Options: LOW, MEDIUM, HIGH, CRITICAL
blocked-risk-level: "HIGH"

# Discord webhooks (optional)
discord-webhook:
  enabled: false
  url: ""
  events:
    denied: true      # Alert when players are blocked
    accepted: false   # Alert when players connect
    whitelisted: true # Alert when whitelisted players join
    error: true       # Alert on API errors

Note: Velocity users use config.toml format instead of YAML


🎯 Commands & Permissions

All commands require the protectcord.admin permission (default: OP)

Command Aliases: /pc, /protect

Main Commands

Command Description
/protectcord reload Reload config, whitelist, and warnings
/protectcord stats View API usage and limits
/protectcord check <player|ip> Manually check an IP
/protectcord version View plugin version and platform info
/protectcord list View all whitelisted entries

Whitelist Commands

Command Description
/protectcord whitelist add player <name> Whitelist a player
/protectcord whitelist add uuid <uuid> Whitelist a UUID
/protectcord whitelist add ip <address> Whitelist an IP address
/protectcord whitelist remove <type> <value> Remove from whitelist

Moderation Commands

Command Description
/protectcord kick <player> Kick a player with IP analysis
/protectcord warn <player> <reason> Issue a warning (3-strike system)
/protectcord warnings <player> View all warnings for a player
/protectcord ban <player> <reason> Manually ban a player
/protectcord unban <player> Remove a ban from a player

Permissions

Permission Description Default
protectcord.admin Access to all commands OP
protectcord.bypass Bypass IP checks (reserved for future use) false

Note: On Forge servers, commands require OP level 2+ (operator/console only)


⚡ 3-Strike Warning System

Automatically manage player behavior with our progressive discipline system:

How It Works

1st Warning → Player receives an in-game chat warning

  • Notified of their violation
  • Warning count displayed (1/3)
  • Given a chance to correct behavior

2nd Warning → Player is kicked from the server

  • Receives final warning message
  • Told they have ONE more chance
  • Warning count: 2/3

3rd Warning → Automatic permanent ban

  • Player is permanently banned
  • All warning reasons listed in ban message
  • Ban persists across server restarts

Example Usage

/protectcord warn Notch Spamming in chat
→ Notch warned (1/3)

/protectcord warn Notch Using excessive caps
→ Notch kicked (2/3 warnings)

/protectcord warn Notch Harassment
→ Notch permanently banned (3/3 warnings)

Warning Management

  • View History: /protectcord warnings <player> - See all warnings with timestamps
  • Manual Ban: /protectcord ban <player> <reason> - Ban without warnings
  • Unban: /protectcord unban <player> - Remove ban (warnings remain)
  • Persistent Storage: All warnings saved to warnings.yml or warnings.toml

🛡️ How It Works

Detection System

ProtectCord checks every connecting player against our threat intelligence database:

  • VPN Detection - Identifies virtual private networks used to hide real IPs
  • Proxy Detection - Detects HTTP/SOCKS proxies and anonymizers
  • Datacenter IPs - Flags hosting providers (common for bots)
  • Risk Scoring - AI-powered risk assessment from UNKNOWN to CRITICAL
  • Bogon Detection - Blocks invalid/reserved IP ranges

Risk Levels Explained

Level What It Means Default Action
UNKNOWN Not enough data ✅ Allow
LOW Clean IP address ✅ Allow
MEDIUM Some suspicious activity ✅ Allow (configurable)
HIGH Known malicious activity ❌ Block
CRITICAL Active threat/attacker ❌ Block

Tip: Customize blocking threshold with blocked-risk-level in your config!

Automatic Bypasses

Smart detection automatically allows:

  • Localhost - 127.0.0.1, ::1
  • Private networks - 192.168.x.x, 10.x.x.x, 172.16-31.x.x
  • Whitelisted players - Configured via commands or config file

📢 Discord Webhook Integration

Get notified instantly when suspicious players try to connect!

Setup in 30 Seconds

1. Create Discord Webhook

  • Server Settings → Integrations → Webhooks → New Webhook
  • Copy the webhook URL

2. Add to config:

discord-webhook:
  enabled: true
  url: "https://discord.com/api/webhooks/YOUR_WEBHOOK_HERE"
  events:
    denied: true  # Get alerts when players are blocked

3. Reload: /protectcord reload

What You'll See

  • 🔴 Connection Denied - Player blocked (includes IP, reason, risk level)
  • 🟢 Connection Accepted - Player allowed (optional)
  • 🔵 Whitelisted Join - Trusted player connected
  • 🟠 API Error - Problem with IP check

❓ FAQ

Is this free to use?
Yes! Our free API key includes 32 requests per minute which is plenty for most servers.

Will this lag my server?
No! IP checks are 100% asynchronous and won't block the main thread. Most checks complete in under 100ms.

Can I whitelist my staff/friends?
Absolutely! Use /protectcord whitelist add player <name> or whitelist by UUID/IP for permanent bypass.

What if a legitimate player gets blocked?
Whitelist them with /protectcord whitelist add player <name>. You can also adjust blocked-risk-level to be less strict.

Does this work with offline mode?
Yes, but we recommend online mode for better security. The plugin works on both.

Can I use this on a proxy network?
Yes! Install only on the proxy (BungeeCord/Velocity) for network-wide protection. Don't install on backend servers.

What happens if the API is down?
By default, players are allowed to connect if the API is unreachable. This prevents lockouts during maintenance.

Where is my data stored?
Only IP addresses are sent to the ProtectCord API for checking. No player data, UUIDs, or usernames are transmitted. See our privacy policy.


🚀 Why Choose ProtectCord?

Advantages Over Other Anti-VPN Plugins

Real-time threat intelligence - Updated constantly, not outdated databases
Risk scoring system - More nuanced than simple block/allow
Multi-platform support - One solution for all server types
Active development - Regular updates and improvements
Great support - Fast response times on Discord
Free forever - No hidden costs or paywalls

Perfect For

  • 🎮 PvP Servers - Stop ban evaders from using VPNs
  • 🏰 Survival Servers - Prevent alt accounts and griefing
  • 🎪 Network Owners - Protect all servers with one installation
  • 🛡️ Hub Servers - Block bots before they can spam
  • ⚔️ Competitive Servers - Ensure fair play with IP verification

🔧 Troubleshooting

"API KEY NOT CONFIGURED!" error

  1. Get your API key from protectcord.com/dashboard
  2. Add it to plugins/ProtectCord/config.yml
  3. Run /protectcord reload

Players getting blocked incorrectly

  1. Check the reason: /protectcord check <player>
  2. Whitelist them: /protectcord whitelist add player <name>
  3. Or lower strictness: Change blocked-risk-level to HIGH or CRITICAL

Rate limit exceeded

Free tier: 32 requests/min (approximately 1 player every 2 seconds)

Solutions:

  • Use whitelist for regular players to reduce API calls
  • On proxies, only install on the proxy (not backend servers)
  • Private/local IPs are automatically bypassed (no API call)

Discord webhook not working

  1. Verify webhook URL is correct
  2. Make sure enabled: true
  3. Check Discord channel permissions
  4. Look for errors in console

📊 Statistics & Monitoring

Track your protection in real-time:

/protectcord stats

Shows:

  • Plan type (Free)
  • Requests used today
  • Rate limit (32 requests/minute)
  • API status

🌐 Links & Support

Need help? Join our Discord server for fast support!


📜 License

All Rights Reserved - See LICENSE file for details


💖 Support the Project

  • ⭐ Star this project on Modrinth
  • 💬 Join our Discord community
  • 📝 Leave a review and share your experience
  • 🐛 Report bugs or suggest features

Protect your server today with ProtectCord - Because prevention is better than moderation.

Made with ❤️ for the Minecraft community