MCPcopy Index your code
hub / github.com/GeyserMC/MCProtocolLib

github.com/GeyserMC/MCProtocolLib @1.21.7-1

Chat with this repo
repository ↗ · DeepWiki ↗ · release 1.21.7-1 ↗ · + Follow
2,475 symbols 7,325 edges 639 files 236 documented · 10%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

MCProtocolLib

MCProtocolLib is a simple library for communicating with Minecraft clients and servers. It allows developers to build custom bots, clients, or servers for Minecraft with ease.

Example Code

See the example folder for sample usage.

Adding as a Dependency

MCProtocolLib builds are published to the Open Collaboration repository. Follow the below steps to add MCProtocolLib as a dependency to your project.

Maven

Add the Repository

<repositories>
    <repository>
        <id>opencollab</id>
        <url>https://repo.opencollab.dev/main/</url>
    </repository>
</repositories>

Add the Dependency

<dependency>
    <groupId>org.geysermc.mcprotocollib</groupId>
    <artifactId>protocol</artifactId>
    <version>(version here)</version>
</dependency>

Gradle (Groovy DSL)

Add the Repository

repositories {
    maven { 
        name 'opencollab'
        url 'https://repo.opencollab.dev/main/'
    }
}

Add the Dependency

dependencies {
    implementation 'org.geysermc.mcprotocollib:protocol:(version here)'
}

Gradle (Kotlin DSL)

Add the Repository

repositories {
    maven("https://repo.opencollab.dev/main/") {
        name = "opencollab"
    }
}

Add the Dependency

dependencies {
    implementation("org.geysermc.mcprotocollib:protocol:(version here)")
}

Snapshots

To use snapshot builds, switch the URL to https://repo.opencollab.dev/maven-snapshots/.

Javadocs

You can find the Javadocs for MCProtocolLib on opencollab.

Building the Source

MCProtocolLib uses Gradle to manage dependencies. To build the source code, run ./gradlew clean build in the project root directory.

Support and Development

Please join the GeyserMC Discord server and visit the #mcprotocollib channel for discussion and support for this project.

License

MCProtocolLib is licensed under the MIT license.

Extension points exported contracts — how you extend this code

Core symbols most depended-on inside this repo

Shape

Method 1,757
Class 529
Enum 117
Interface 72

Languages

Java100%

Modules by API surface

protocol/src/main/java/org/geysermc/mcprotocollib/protocol/codec/MinecraftTypes.java135 symbols
protocol/src/main/java/org/geysermc/mcprotocollib/protocol/data/game/item/component/ItemTypes.java79 symbols
protocol/src/main/java/org/geysermc/mcprotocollib/auth/GameProfile.java33 symbols
protocol/src/main/java/org/geysermc/mcprotocollib/network/session/NetworkSession.java32 symbols
protocol/src/main/java/org/geysermc/mcprotocollib/network/Session.java26 symbols
protocol/src/main/java/org/geysermc/mcprotocollib/protocol/data/game/Holder.java25 symbols
protocol/src/main/java/org/geysermc/mcprotocollib/protocol/codec/NbtComponentSerializer.java20 symbols
protocol/src/main/java/org/geysermc/mcprotocollib/network/server/AbstractServer.java20 symbols
protocol/src/main/java/org/geysermc/mcprotocollib/protocol/data/game/item/component/DataComponentType.java16 symbols
protocol/src/main/java/org/geysermc/mcprotocollib/protocol/data/game/item/component/IntComponentType.java15 symbols
protocol/src/main/java/org/geysermc/mcprotocollib/protocol/data/game/item/component/BooleanComponentType.java15 symbols
protocol/src/main/java/org/geysermc/mcprotocollib/protocol/MinecraftProtocol.java15 symbols

For agents

$ claude mcp add MCProtocolLib \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page