Minecraft Servers HQ

Minecraft plugin ProtocolLib

Information about ProtocolLib and servers where it was found

🔌 About ProtocolLib

ProtocolLib is a Minecraft plugin library that exposes the network protocol to other plugins. It provides an API for reading, modifying, cancelling, and sending raw packets between server and client without requiring plugins to depend on obfuscated server internals.

🎯 Purpose

ProtocolLib exists to make packet-level work reliable and maintainable for plugin developers. It centralizes packet access behind a stable API so multiple plugins can inspect and change packet traffic without directly hooking the server's internal classes.

⚙️ Features

  • Event-style API for intercepting incoming and outgoing packets.
  • Read/write accessors for common packet fields (strings, ints, vectors, etc.).
  • Ability to cancel packets or modify their contents before they reach their destination.
  • Utility to construct and send packets server-side.
  • Hides obfuscated server classes behind an index-based read/write system to improve cross-version stability.
  • Distributed as a server-side jar and consumable as a compile-time dependency for plugin builds.

🧩 Who It Is For

  • Plugin developers who need packet-level control (cosmetics, disguises, custom client effects, network utilities).
  • Server operators who run plugins that depend on direct protocol access.

🏗️ Example Use Cases

  • Listening for chat packets to implement a server-side censor before messages are applied.
  • Sending a crafted explosion packet to a player to create a client-side effect without changing the world state.
  • Implementing disguises, custom animations, or other client-only visuals that require packet manipulation.

⌨️ Commands

No user-facing commands are provided by ProtocolLib itself; it is a developer library rather than a feature plugin.

⚙️ Installation

📥 Setup

  • Download the official ProtocolLib jar and place it into your server's plugins/ directory.
  • Restart the server and check the server console to confirm the plugin loads without errors.
  • When developing a plugin that uses ProtocolLib, add ProtocolLib as a compile-time dependency and declare it (or soft-depend) in your plugin manifest.

📦 Dependencies

  • ProtocolLib does not require other server plugins to function; it is intended to be used by other plugins as a library.

🧾 Configuration

  • ProtocolLib creates its own configuration files on first run. Plugin-specific configuration is handled by the plugins that use ProtocolLib.

🧠 Technical Notes

  • ProtocolLib provides a ProtocolManager entry point to register packet listeners and to send packets programmatically.
  • The project is distributed under a GPL-2.0 license.
  • Maven/Gradle coordinates are published for use as a compile-time dependency.
  • ProtocolLib is maintained with compatibility considerations for a wide range of Minecraft server versions; it is primarily targeted at Bukkit-derived server software.

🤝 When This Plugin Is Useful

If your project needs to inspect or alter the raw Minecraft protocol (for client-side effects, custom visuals, or network-level hooks), ProtocolLib centralizes and stabilizes that work so multiple plugins can safely interact with packets.

Servers with ProtocolLib

The ProtocolLib plugin page shows which servers monitoring found this plugin on, and which platforms and versions it appears with.

Plugins may add commands, economy, protection, permissions, mini-games, integrations, or other mechanics. The actual role of ProtocolLib depends on each server's configuration.

Data is generated automatically from technical server responses. If a server hides its plugin list, it may not appear in this section even if it uses ProtocolLib.

Use the server list with ProtocolLib to compare projects, check compatible versions, or find examples of how the plugin is used on public servers.