# mc-protocol > Build Minecraft servers, bots, and proxies in TypeScript. Named packets, item helpers, and lit chunks for Java 26.2. No runtime dependencies. ## Docs - [Changelog](https://mc-protocol.vercel.app/changelog): What changed in mc-protocol, reconstructed from the repository's commits and grouped by commit date. No tagged releases yet. ## Docs - [Introduction](https://mc-protocol.vercel.app/docs): What mc-protocol is, what it does for you, and what it leaves to you. - [Installation](https://mc-protocol.vercel.app/docs/installation): Add mc-protocol to a Node or Bun project. - [Connection states](https://mc-protocol.vercel.app/docs/connection-states): How a connection moves from handshake to play, and how the library tracks it. - [Versions](https://mc-protocol.vercel.app/docs/versions): Which Minecraft versions are built in, how one is picked per connection, and how to pin one. - [Your first server](https://mc-protocol.vercel.app/docs/server): Accept a real Minecraft 26.2 client and put it on generated terrain. - [Your first client](https://mc-protocol.vercel.app/docs/client): Connect to a server, ping it, or log a bot in. - [Building a proxy](https://mc-protocol.vercel.app/docs/proxy): Forward packets between players and an upstream server, with optional packet handlers. - [Events](https://mc-protocol.vercel.app/docs/events): Every event Server, Client, and Proxy emit, with their arguments. - [Sending chunks](https://mc-protocol.vercel.app/docs/chunks): Use ChunkHelper to build lit LevelChunkWithLight payloads from block state IDs. - [World generation](https://mc-protocol.vercel.app/docs/world-generation): Generate flat or seeded terrain with caves, ores, trees, and reusable structures. - [Multithreading](https://mc-protocol.vercel.app/docs/multithreading): Generate packet-ready noise chunks concurrently without managing worker threads, caches, or lighting margins yourself. - [Items and slots](https://mc-protocol.vercel.app/docs/items): Give items by name, customize their components, and clear inventory slots without building buffers. - [Maps](https://mc-protocol.vercel.app/docs/maps): Give a client a filled map, convert RGB pixels, and update its image or markers. - [Commands](https://mc-protocol.vercel.app/docs/commands): Declare the command tree the client uses for tab completion and syntax highlighting, without hand-numbering nodes. - [Particles](https://mc-protocol.vercel.app/docs/particles): Spawn particles by name with typed payloads for the ones that carry colors, blocks or items. - [Entity metadata](https://mc-protocol.vercel.app/docs/entity-metadata): Set entity flags, names, poses, health and display properties by name instead of by index and serializer ID. - [Packet flags](https://mc-protocol.vercel.app/docs/flags): Named bit flags for the packets that carry a raw flags number, with pack and unpack helpers. - [Limitations](https://mc-protocol.vercel.app/docs/limitations): What is missing or fragile today, so you can plan around it. ## Packets - [Packets](https://mc-protocol.vercel.app/packets): Every packet mc-protocol can read and write, by connection state. ### Handshake - [Handshake](https://mc-protocol.vercel.app/packets/handshake): The first packet on a new socket. Nothing is sent back. - [Intension](https://mc-protocol.vercel.app/packets/handshake/intension): Handshake 0x00, client → server. - [Legacy Ping](https://mc-protocol.vercel.app/packets/handshake/legacyping): Handshake 0xFE, client → server. ### Status - [Status](https://mc-protocol.vercel.app/packets/status): Server list ping. The client closes the socket when done. - [Status Request](https://mc-protocol.vercel.app/packets/status/statusrequest): Status 0x00, client → server. - [Ping Request](https://mc-protocol.vercel.app/packets/status/pingrequest): Status 0x01, client → server. - [Status Response](https://mc-protocol.vercel.app/packets/status/statusresponse): Status 0x00, server → client. - [Pong Response](https://mc-protocol.vercel.app/packets/status/pongresponse): Status 0x01, server → client. ### Login - [Login](https://mc-protocol.vercel.app/packets/login): Identity, optional encryption, and the compression threshold. - [Hello (serverbound)](https://mc-protocol.vercel.app/packets/login/hello-serverbound): Login 0x00, client → server. - [Key](https://mc-protocol.vercel.app/packets/login/key): Login 0x01, client → server. - [Custom Query Answer](https://mc-protocol.vercel.app/packets/login/customqueryanswer): Login 0x02, client → server. - [Login Acknowledged](https://mc-protocol.vercel.app/packets/login/loginacknowledged): Login 0x03, client → server. - [Cookie Response](https://mc-protocol.vercel.app/packets/login/cookieresponse): Login 0x04, client → server. - [Login Disconnect](https://mc-protocol.vercel.app/packets/login/logindisconnect): Login 0x00, server → client. - [Hello (clientbound)](https://mc-protocol.vercel.app/packets/login/hello-clientbound): Login 0x01, server → client. - [Login Finished](https://mc-protocol.vercel.app/packets/login/loginfinished): Login 0x02, server → client. - [Login Compression](https://mc-protocol.vercel.app/packets/login/logincompression): Login 0x03, server → client. - [Custom Query](https://mc-protocol.vercel.app/packets/login/customquery): Login 0x04, server → client. - [Cookie Request](https://mc-protocol.vercel.app/packets/login/cookierequest): Login 0x05, server → client. ### Configuration - [Configuration](https://mc-protocol.vercel.app/packets/config): Registries, tags, feature flags and resource packs before the world. - [Client Information](https://mc-protocol.vercel.app/packets/config/clientinformation): Configuration 0x00, client → server. - [Cookie Response](https://mc-protocol.vercel.app/packets/config/cookieresponse): Configuration 0x01, client → server. - [Custom Payload (serverbound)](https://mc-protocol.vercel.app/packets/config/custompayload-serverbound): Configuration 0x02, client → server. - [Finish Configuration (serverbound)](https://mc-protocol.vercel.app/packets/config/finishconfiguration-serverbound): Configuration 0x03, client → server. - [Keep Alive (serverbound)](https://mc-protocol.vercel.app/packets/config/keepalive-serverbound): Configuration 0x04, client → server. - [Pong](https://mc-protocol.vercel.app/packets/config/pong): Configuration 0x05, client → server. - [Resource Pack](https://mc-protocol.vercel.app/packets/config/resourcepack): Configuration 0x06, client → server. - [Select Known Packs (serverbound)](https://mc-protocol.vercel.app/packets/config/selectknownpacks-serverbound): Configuration 0x07, client → server. - [Custom Click Action](https://mc-protocol.vercel.app/packets/config/customclickaction): Configuration 0x08, client → server. - [Accept Code Of Conduct](https://mc-protocol.vercel.app/packets/config/acceptcodeofconduct): Configuration 0x09, client → server. - [Cookie Request](https://mc-protocol.vercel.app/packets/config/cookierequest): Configuration 0x00, server → client. - [Custom Payload (clientbound)](https://mc-protocol.vercel.app/packets/config/custompayload-clientbound): Configuration 0x01, server → client. - [Disconnect](https://mc-protocol.vercel.app/packets/config/disconnect): Configuration 0x02, server → client. - [Finish Configuration (clientbound)](https://mc-protocol.vercel.app/packets/config/finishconfiguration-clientbound): Configuration 0x03, server → client. - [Keep Alive (clientbound)](https://mc-protocol.vercel.app/packets/config/keepalive-clientbound): Configuration 0x04, server → client. - [Ping](https://mc-protocol.vercel.app/packets/config/ping): Configuration 0x05, server → client. - [Reset Chat](https://mc-protocol.vercel.app/packets/config/resetchat): Configuration 0x06, server → client. - [Registry Data](https://mc-protocol.vercel.app/packets/config/registrydata): Configuration 0x07, server → client. - [Resource Pack Pop](https://mc-protocol.vercel.app/packets/config/resourcepackpop): Configuration 0x08, server → client. - [Resource Pack Push](https://mc-protocol.vercel.app/packets/config/resourcepackpush): Configuration 0x09, server → client. - [Store Cookie](https://mc-protocol.vercel.app/packets/config/storecookie): Configuration 0x0A, server → client. - [Transfer](https://mc-protocol.vercel.app/packets/config/transfer): Configuration 0x0B, server → client. - [Update Enabled Features](https://mc-protocol.vercel.app/packets/config/updateenabledfeatures): Configuration 0x0C, server → client. - [Update Tags](https://mc-protocol.vercel.app/packets/config/updatetags): Configuration 0x0D, server → client. - [Select Known Packs (clientbound)](https://mc-protocol.vercel.app/packets/config/selectknownpacks-clientbound): Configuration 0x0E, server → client. - [Custom Report Details](https://mc-protocol.vercel.app/packets/config/customreportdetails): Configuration 0x0F, server → client. - [Server Links](https://mc-protocol.vercel.app/packets/config/serverlinks): Configuration 0x10, server → client. - [Clear Dialog](https://mc-protocol.vercel.app/packets/config/cleardialog): Configuration 0x11, server → client. - [Show Dialog](https://mc-protocol.vercel.app/packets/config/showdialog): Configuration 0x12, server → client. - [Code Of Conduct](https://mc-protocol.vercel.app/packets/config/codeofconduct): Configuration 0x13, server → client. ### Play - [Play](https://mc-protocol.vercel.app/packets/play): Everything in the world: chunks, entities, chat, movement. - [Accept Teleportation](https://mc-protocol.vercel.app/packets/play/acceptteleportation): Play 0x00, client → server. - [Attack](https://mc-protocol.vercel.app/packets/play/attack): Play 0x01, client → server. - [Block Entity Tag Query](https://mc-protocol.vercel.app/packets/play/blockentitytagquery): Play 0x02, client → server. - [Bundle Item Selected](https://mc-protocol.vercel.app/packets/play/bundleitemselected): Play 0x03, client → server. - [Change Difficulty (serverbound)](https://mc-protocol.vercel.app/packets/play/changedifficulty-serverbound): Play 0x04, client → server. - [Change Game Mode](https://mc-protocol.vercel.app/packets/play/changegamemode): Play 0x05, client → server. - [Chat Ack](https://mc-protocol.vercel.app/packets/play/chatack): Play 0x06, client → server. - [Chat Command](https://mc-protocol.vercel.app/packets/play/chatcommand): Play 0x07, client → server. - [Chat Command Signed](https://mc-protocol.vercel.app/packets/play/chatcommandsigned): Play 0x08, client → server. - [Chat](https://mc-protocol.vercel.app/packets/play/chat): Play 0x09, client → server. - [Chat Session Update](https://mc-protocol.vercel.app/packets/play/chatsessionupdate): Play 0x0A, client → server. - [Chunk Batch Received](https://mc-protocol.vercel.app/packets/play/chunkbatchreceived): Play 0x0B, client → server. - [Client Command](https://mc-protocol.vercel.app/packets/play/clientcommand): Play 0x0C, client → server. - [Client Tick End](https://mc-protocol.vercel.app/packets/play/clienttickend): Play 0x0D, client → server. - [Client Information](https://mc-protocol.vercel.app/packets/play/clientinformation): Play 0x0E, client → server. - [Command Suggestion](https://mc-protocol.vercel.app/packets/play/commandsuggestion): Play 0x0F, client → server. - [Configuration Acknowledged](https://mc-protocol.vercel.app/packets/play/configurationacknowledged): Play 0x10, client → server. - [Enchant Item](https://mc-protocol.vercel.app/packets/play/enchantitem): Play 0x11, client → server. - [Container Click](https://mc-protocol.vercel.app/packets/play/containerclick): Play 0x12, client → server. - [Container Close (serverbound)](https://mc-protocol.vercel.app/packets/play/containerclose-serverbound): Play 0x13, client → server. - [Container Slot State Changed](https://mc-protocol.vercel.app/packets/play/containerslotstatechanged): Play 0x14, client → server. - [Cookie Response](https://mc-protocol.vercel.app/packets/play/cookieresponse): Play 0x15, client → server. - [Custom Payload (serverbound)](https://mc-protocol.vercel.app/packets/play/custompayload-serverbound): Play 0x16, client → server. - [Debug Subscription Request](https://mc-protocol.vercel.app/packets/play/debugsubscriptionrequest): Play 0x17, client → server. - [Edit Book](https://mc-protocol.vercel.app/packets/play/editbook): Play 0x18, client → server. - [Entity Tag Query](https://mc-protocol.vercel.app/packets/play/entitytagquery): Play 0x19, client → server. - [Interact](https://mc-protocol.vercel.app/packets/play/interact): Play 0x1A, client → server. - [Jigsaw Generate](https://mc-protocol.vercel.app/packets/play/jigsawgenerate): Play 0x1B, client → server. - [Keep Alive (serverbound)](https://mc-protocol.vercel.app/packets/play/keepalive-serverbound): Play 0x1C, client → server. - [Lock Difficulty](https://mc-protocol.vercel.app/packets/play/lockdifficulty): Play 0x1D, client → server. - [Move Player Pos](https://mc-protocol.vercel.app/packets/play/moveplayerpos): Play 0x1E, client → server. - [Move Player Pos Rot](https://mc-protocol.vercel.app/packets/play/moveplayerposrot): Play 0x1F, client → server. - [Move Player Rot](https://mc-protocol.vercel.app/packets/play/moveplayerrot): Play 0x20, client → server. - [Move Player Status Only](https://mc-protocol.vercel.app/packets/play/moveplayerstatusonly): Play 0x21, client → server. - [Move Vehicle (serverbound)](https://mc-protocol.vercel.app/packets/play/movevehicle-serverbound): Play 0x22, client → server. - [Paddle Boat](https://mc-protocol.vercel.app/packets/play/paddleboat): Play 0x23, client → server. - [Pick Item From Block](https://mc-protocol.vercel.app/packets/play/pickitemfromblock): Play 0x24, client → server. - [Pick Item From Entity](https://mc-protocol.vercel.app/packets/play/pickitemfromentity): Play 0x25, client → server. - [Ping Request](https://mc-protocol.vercel.app/packets/play/pingrequest): Play 0x26, client → server. - [Place Recipe](https://mc-protocol.vercel.app/packets/play/placerecipe): Play 0x27, client → server. - [Player Abilities (serverbound)](https://mc-protocol.vercel.app/packets/play/playerabilities-serverbound): Play 0x28, client → server. - [Player Action](https://mc-protocol.vercel.app/packets/play/playeraction): Play 0x29, client → server. - [Player Command](https://mc-protocol.vercel.app/packets/play/playercommand): Play 0x2A, client → server. - [Player Input](https://mc-protocol.vercel.app/packets/play/playerinput): Play 0x2B, client → server. - [Player Loaded](https://mc-protocol.vercel.app/packets/play/playerloaded): Play 0x2C, client → server. - [Pong](https://mc-protocol.vercel.app/packets/play/pong): Play 0x2D, client → server. - [Recipe Book Change Settings](https://mc-protocol.vercel.app/packets/play/recipebookchangesettings): Play 0x2E, client → server. - [Recipe Book Seen Recipe](https://mc-protocol.vercel.app/packets/play/recipebookseenrecipe): Play 0x2F, client → server. - [Rename Item](https://mc-protocol.vercel.app/packets/play/renameitem): Play 0x30, client → server. - [Resource Pack](https://mc-protocol.vercel.app/packets/play/resourcepack): Play 0x31, client → server. - [Seen Advancements](https://mc-protocol.vercel.app/packets/play/seenadvancements): Play 0x32, client → server. - [Select Trade](https://mc-protocol.vercel.app/packets/play/selecttrade): Play 0x33, client → server. - [Set Beacon](https://mc-protocol.vercel.app/packets/play/setbeacon): Play 0x34, client → server. - [Set Carried Item](https://mc-protocol.vercel.app/packets/play/setcarrieditem): Play 0x35, client → server. - [Program Command Block](https://mc-protocol.vercel.app/packets/play/programcommandblock): Play 0x36, client → server. - [Program Command Block Minecart](https://mc-protocol.vercel.app/packets/play/programcommandblockminecart): Play 0x37, client → server. - [Set Creative Mode Slot](https://mc-protocol.vercel.app/packets/play/setcreativemodeslot): Play 0x38, client → server. - [Set Game Rule](https://mc-protocol.vercel.app/packets/play/setgamerule): Play 0x39, client → server. - [Set Jigsaw Block](https://mc-protocol.vercel.app/packets/play/setjigsawblock): Play 0x3A, client → server. - [Set Structure Block](https://mc-protocol.vercel.app/packets/play/setstructureblock): Play 0x3B, client → server. - [Set Test Block](https://mc-protocol.vercel.app/packets/play/settestblock): Play 0x3C, client → server. - [Sign Update](https://mc-protocol.vercel.app/packets/play/signupdate): Play 0x3D, client → server. - [Spectator Action](https://mc-protocol.vercel.app/packets/play/spectatoraction): Play 0x3E, client → server. - [Swing](https://mc-protocol.vercel.app/packets/play/swing): Play 0x3F, client → server. - [Teleport To Entity](https://mc-protocol.vercel.app/packets/play/teleporttoentity): Play 0x40, client → server. - [Test Instance Block Action](https://mc-protocol.vercel.app/packets/play/testinstanceblockaction): Play 0x41, client → server. - [Use Item On](https://mc-protocol.vercel.app/packets/play/useitemon): Play 0x42, client → server. - [Use Item](https://mc-protocol.vercel.app/packets/play/useitem): Play 0x43, client → server. - [Custom Click Action](https://mc-protocol.vercel.app/packets/play/customclickaction): Play 0x44, client → server. - [Bundle Delimiter](https://mc-protocol.vercel.app/packets/play/bundledelimiter): Play 0x00, server → client. - [Add Entity](https://mc-protocol.vercel.app/packets/play/addentity): Play 0x01, server → client. - [Animate](https://mc-protocol.vercel.app/packets/play/animate): Play 0x02, server → client. - [Award Stats](https://mc-protocol.vercel.app/packets/play/awardstats): Play 0x03, server → client. - [Block Changed Ack](https://mc-protocol.vercel.app/packets/play/blockchangedack): Play 0x04, server → client. - [Block Destruction](https://mc-protocol.vercel.app/packets/play/blockdestruction): Play 0x05, server → client. - [Block Entity Data](https://mc-protocol.vercel.app/packets/play/blockentitydata): Play 0x06, server → client. - [Block Event](https://mc-protocol.vercel.app/packets/play/blockevent): Play 0x07, server → client. - [Block Update](https://mc-protocol.vercel.app/packets/play/blockupdate): Play 0x08, server → client. - [Boss Event](https://mc-protocol.vercel.app/packets/play/bossevent): Play 0x09, server → client. - [Change Difficulty (clientbound)](https://mc-protocol.vercel.app/packets/play/changedifficulty-clientbound): Play 0x0A, server → client. - [Chunk Batch Finished](https://mc-protocol.vercel.app/packets/play/chunkbatchfinished): Play 0x0B, server → client. - [Chunk Batch Start](https://mc-protocol.vercel.app/packets/play/chunkbatchstart): Play 0x0C, server → client. - [Chunks Biomes](https://mc-protocol.vercel.app/packets/play/chunksbiomes): Play 0x0D, server → client. - [Clear Titles](https://mc-protocol.vercel.app/packets/play/cleartitles): Play 0x0E, server → client. - [Command Suggestions](https://mc-protocol.vercel.app/packets/play/commandsuggestions): Play 0x0F, server → client. - [Commands](https://mc-protocol.vercel.app/packets/play/commands): Play 0x10, server → client. - [Container Close (clientbound)](https://mc-protocol.vercel.app/packets/play/containerclose-clientbound): Play 0x11, server → client. - [Container Set Content](https://mc-protocol.vercel.app/packets/play/containersetcontent): Play 0x12, server → client. - [Container Set Data](https://mc-protocol.vercel.app/packets/play/containersetdata): Play 0x13, server → client. - [Container Set Slot](https://mc-protocol.vercel.app/packets/play/containersetslot): Play 0x14, server → client. - [Cookie Request](https://mc-protocol.vercel.app/packets/play/cookierequest): Play 0x15, server → client. - [Cooldown](https://mc-protocol.vercel.app/packets/play/cooldown): Play 0x16, server → client. - [Custom Chat Completions](https://mc-protocol.vercel.app/packets/play/customchatcompletions): Play 0x17, server → client. - [Custom Payload (clientbound)](https://mc-protocol.vercel.app/packets/play/custompayload-clientbound): Play 0x18, server → client. - [Damage Event](https://mc-protocol.vercel.app/packets/play/damageevent): Play 0x19, server → client. - [Debug Block Value](https://mc-protocol.vercel.app/packets/play/debugblockvalue): Play 0x1A, server → client. - [Debug Chunk Value](https://mc-protocol.vercel.app/packets/play/debugchunkvalue): Play 0x1B, server → client. - [Debug Entity Value](https://mc-protocol.vercel.app/packets/play/debugentityvalue): Play 0x1C, server → client. - [Debug Event](https://mc-protocol.vercel.app/packets/play/debugevent): Play 0x1D, server → client. - [Debug Sample](https://mc-protocol.vercel.app/packets/play/debugsample): Play 0x1E, server → client. - [Delete Chat](https://mc-protocol.vercel.app/packets/play/deletechat): Play 0x1F, server → client. - [Disconnect](https://mc-protocol.vercel.app/packets/play/disconnect): Play 0x20, server → client. - [Disguised Chat](https://mc-protocol.vercel.app/packets/play/disguisedchat): Play 0x21, server → client. - [Entity Event](https://mc-protocol.vercel.app/packets/play/entityevent): Play 0x22, server → client. - [Entity Position Sync](https://mc-protocol.vercel.app/packets/play/entitypositionsync): Play 0x23, server → client. - [Explode](https://mc-protocol.vercel.app/packets/play/explode): Play 0x24, server → client. - [Forget Level Chunk](https://mc-protocol.vercel.app/packets/play/forgetlevelchunk): Play 0x25, server → client. - [Game Event](https://mc-protocol.vercel.app/packets/play/gameevent): Play 0x26, server → client. - [Game Rule Values](https://mc-protocol.vercel.app/packets/play/gamerulevalues): Play 0x27, server → client. - [Game Test Highlight Pos](https://mc-protocol.vercel.app/packets/play/gametesthighlightpos): Play 0x28, server → client. - [Horse Screen Open](https://mc-protocol.vercel.app/packets/play/horsescreenopen): Play 0x29, server → client. - [Hurt Animation](https://mc-protocol.vercel.app/packets/play/hurtanimation): Play 0x2A, server → client. - [Initialize Border](https://mc-protocol.vercel.app/packets/play/initializeborder): Play 0x2B, server → client. - [Keep Alive (clientbound)](https://mc-protocol.vercel.app/packets/play/keepalive-clientbound): Play 0x2C, server → client. - [Level Chunk With Light](https://mc-protocol.vercel.app/packets/play/levelchunkwithlight): Play 0x2D, server → client. - [Level Event](https://mc-protocol.vercel.app/packets/play/levelevent): Play 0x2E, server → client. - [Level Particles](https://mc-protocol.vercel.app/packets/play/levelparticles): Play 0x2F, server → client. - [Light Update](https://mc-protocol.vercel.app/packets/play/lightupdate): Play 0x30, server → client. - [Login](https://mc-protocol.vercel.app/packets/play/login): Play 0x31, server → client. - [Low Disk Space Warning](https://mc-protocol.vercel.app/packets/play/lowdiskspacewarning): Play 0x32, server → client. - [Map Item Data](https://mc-protocol.vercel.app/packets/play/mapitemdata): Play 0x33, server → client. - [Merchant Offers](https://mc-protocol.vercel.app/packets/play/merchantoffers): Play 0x34, server → client. - [Move Entity Pos](https://mc-protocol.vercel.app/packets/play/moveentitypos): Play 0x35, server → client. - [Move Entity Pos Rot](https://mc-protocol.vercel.app/packets/play/moveentityposrot): Play 0x36, server → client. - [Move Minecart Along Track](https://mc-protocol.vercel.app/packets/play/moveminecartalongtrack): Play 0x37, server → client. - [Move Entity Rot](https://mc-protocol.vercel.app/packets/play/moveentityrot): Play 0x38, server → client. - [Move Vehicle (clientbound)](https://mc-protocol.vercel.app/packets/play/movevehicle-clientbound): Play 0x39, server → client. - [Open Book](https://mc-protocol.vercel.app/packets/play/openbook): Play 0x3A, server → client. - [Open Screen](https://mc-protocol.vercel.app/packets/play/openscreen): Play 0x3B, server → client. - [Open Sign Editor](https://mc-protocol.vercel.app/packets/play/opensigneditor): Play 0x3C, server → client. - [Ping](https://mc-protocol.vercel.app/packets/play/ping): Play 0x3D, server → client. - [Pong Response](https://mc-protocol.vercel.app/packets/play/pongresponse): Play 0x3E, server → client. - [Place Ghost Recipe](https://mc-protocol.vercel.app/packets/play/placeghostrecipe): Play 0x3F, server → client. - [Player Abilities (clientbound)](https://mc-protocol.vercel.app/packets/play/playerabilities-clientbound): Play 0x40, server → client. - [Player Chat](https://mc-protocol.vercel.app/packets/play/playerchat): Play 0x41, server → client. - [Player Combat End](https://mc-protocol.vercel.app/packets/play/playercombatend): Play 0x42, server → client. - [Player Combat Enter](https://mc-protocol.vercel.app/packets/play/playercombatenter): Play 0x43, server → client. - [Player Combat Kill](https://mc-protocol.vercel.app/packets/play/playercombatkill): Play 0x44, server → client. - [Player Info Remove](https://mc-protocol.vercel.app/packets/play/playerinforemove): Play 0x45, server → client. - [Player Info Update](https://mc-protocol.vercel.app/packets/play/playerinfoupdate): Play 0x46, server → client. - [Player Look At](https://mc-protocol.vercel.app/packets/play/playerlookat): Play 0x47, server → client. - [Synchronize Player Position](https://mc-protocol.vercel.app/packets/play/synchronizeplayerposition): Play 0x48, server → client. - [Player Rotation](https://mc-protocol.vercel.app/packets/play/playerrotation): Play 0x49, server → client. - [Recipe Book Add](https://mc-protocol.vercel.app/packets/play/recipebookadd): Play 0x4A, server → client. - [Recipe Book Remove](https://mc-protocol.vercel.app/packets/play/recipebookremove): Play 0x4B, server → client. - [Recipe Book Settings](https://mc-protocol.vercel.app/packets/play/recipebooksettings): Play 0x4C, server → client. - [Remove Entities](https://mc-protocol.vercel.app/packets/play/removeentities): Play 0x4D, server → client. - [Remove Mob Effect](https://mc-protocol.vercel.app/packets/play/removemobeffect): Play 0x4E, server → client. - [Reset Score](https://mc-protocol.vercel.app/packets/play/resetscore): Play 0x4F, server → client. - [Resource Pack Pop](https://mc-protocol.vercel.app/packets/play/resourcepackpop): Play 0x50, server → client. - [Resource Pack Push](https://mc-protocol.vercel.app/packets/play/resourcepackpush): Play 0x51, server → client. - [Respawn](https://mc-protocol.vercel.app/packets/play/respawn): Play 0x52, server → client. - [Rotate Head](https://mc-protocol.vercel.app/packets/play/rotatehead): Play 0x53, server → client. - [Section Blocks Update](https://mc-protocol.vercel.app/packets/play/sectionblocksupdate): Play 0x54, server → client. - [Select Advancements Tab](https://mc-protocol.vercel.app/packets/play/selectadvancementstab): Play 0x55, server → client. - [Server Data](https://mc-protocol.vercel.app/packets/play/serverdata): Play 0x56, server → client. - [Set Action Bar Text](https://mc-protocol.vercel.app/packets/play/setactionbartext): Play 0x57, server → client. - [Set Border Center](https://mc-protocol.vercel.app/packets/play/setbordercenter): Play 0x58, server → client. - [Set Border Lerp Size](https://mc-protocol.vercel.app/packets/play/setborderlerpsize): Play 0x59, server → client. - [Set Border Size](https://mc-protocol.vercel.app/packets/play/setbordersize): Play 0x5A, server → client. - [Set Border Warning Delay](https://mc-protocol.vercel.app/packets/play/setborderwarningdelay): Play 0x5B, server → client. - [Set Border Warning Distance](https://mc-protocol.vercel.app/packets/play/setborderwarningdistance): Play 0x5C, server → client. - [Set Camera](https://mc-protocol.vercel.app/packets/play/setcamera): Play 0x5D, server → client. - [Set Center Chunk](https://mc-protocol.vercel.app/packets/play/setcenterchunk): Play 0x5E, server → client. - [Set Chunk Cache Radius](https://mc-protocol.vercel.app/packets/play/setchunkcacheradius): Play 0x5F, server → client. - [Set Cursor Item](https://mc-protocol.vercel.app/packets/play/setcursoritem): Play 0x60, server → client. - [Default Spawn Position](https://mc-protocol.vercel.app/packets/play/defaultspawnposition): Play 0x61, server → client. - [Set Display Objective](https://mc-protocol.vercel.app/packets/play/setdisplayobjective): Play 0x62, server → client. - [Set Entity Data](https://mc-protocol.vercel.app/packets/play/setentitydata): Play 0x63, server → client. - [Set Entity Link](https://mc-protocol.vercel.app/packets/play/setentitylink): Play 0x64, server → client. - [Set Entity Motion](https://mc-protocol.vercel.app/packets/play/setentitymotion): Play 0x65, server → client. - [Set Equipment](https://mc-protocol.vercel.app/packets/play/setequipment): Play 0x66, server → client. - [Set Experience](https://mc-protocol.vercel.app/packets/play/setexperience): Play 0x67, server → client. - [Set Health](https://mc-protocol.vercel.app/packets/play/sethealth): Play 0x68, server → client. - [Set Held Slot](https://mc-protocol.vercel.app/packets/play/setheldslot): Play 0x69, server → client. - [Set Objective](https://mc-protocol.vercel.app/packets/play/setobjective): Play 0x6A, server → client. - [Set Passengers](https://mc-protocol.vercel.app/packets/play/setpassengers): Play 0x6B, server → client. - [Set Player Inventory](https://mc-protocol.vercel.app/packets/play/setplayerinventory): Play 0x6C, server → client. - [Set Player Team](https://mc-protocol.vercel.app/packets/play/setplayerteam): Play 0x6D, server → client. - [Set Score](https://mc-protocol.vercel.app/packets/play/setscore): Play 0x6E, server → client. - [Set Simulation Distance](https://mc-protocol.vercel.app/packets/play/setsimulationdistance): Play 0x6F, server → client. - [Set Subtitle Text](https://mc-protocol.vercel.app/packets/play/setsubtitletext): Play 0x70, server → client. - [Set Time](https://mc-protocol.vercel.app/packets/play/settime): Play 0x71, server → client. - [Set Title Text](https://mc-protocol.vercel.app/packets/play/settitletext): Play 0x72, server → client. - [Set Titles Animation](https://mc-protocol.vercel.app/packets/play/settitlesanimation): Play 0x73, server → client. - [Sound Entity](https://mc-protocol.vercel.app/packets/play/soundentity): Play 0x74, server → client. - [Sound](https://mc-protocol.vercel.app/packets/play/sound): Play 0x75, server → client. - [Start Configuration](https://mc-protocol.vercel.app/packets/play/startconfiguration): Play 0x76, server → client. - [Stop Sound](https://mc-protocol.vercel.app/packets/play/stopsound): Play 0x77, server → client. - [Store Cookie](https://mc-protocol.vercel.app/packets/play/storecookie): Play 0x78, server → client. - [System Chat](https://mc-protocol.vercel.app/packets/play/systemchat): Play 0x79, server → client. - [Tab List](https://mc-protocol.vercel.app/packets/play/tablist): Play 0x7A, server → client. - [Tag Query](https://mc-protocol.vercel.app/packets/play/tagquery): Play 0x7B, server → client. - [Take Item Entity](https://mc-protocol.vercel.app/packets/play/takeitementity): Play 0x7C, server → client. - [Teleport Entity](https://mc-protocol.vercel.app/packets/play/teleportentity): Play 0x7D, server → client. - [Test Instance Block Status](https://mc-protocol.vercel.app/packets/play/testinstanceblockstatus): Play 0x7E, server → client. - [Ticking State](https://mc-protocol.vercel.app/packets/play/tickingstate): Play 0x7F, server → client. - [Ticking Step](https://mc-protocol.vercel.app/packets/play/tickingstep): Play 0x80, server → client. - [Transfer](https://mc-protocol.vercel.app/packets/play/transfer): Play 0x81, server → client. - [Update Advancements](https://mc-protocol.vercel.app/packets/play/updateadvancements): Play 0x82, server → client. - [Update Attributes](https://mc-protocol.vercel.app/packets/play/updateattributes): Play 0x83, server → client. - [Update Mob Effect](https://mc-protocol.vercel.app/packets/play/updatemobeffect): Play 0x84, server → client. - [Update Recipes](https://mc-protocol.vercel.app/packets/play/updaterecipes): Play 0x85, server → client. - [Update Tags](https://mc-protocol.vercel.app/packets/play/updatetags): Play 0x86, server → client. - [Projectile Power](https://mc-protocol.vercel.app/packets/play/projectilepower): Play 0x87, server → client. - [Custom Report Details](https://mc-protocol.vercel.app/packets/play/customreportdetails): Play 0x88, server → client. - [Server Links](https://mc-protocol.vercel.app/packets/play/serverlinks): Play 0x89, server → client. - [Waypoint](https://mc-protocol.vercel.app/packets/play/waypoint): Play 0x8A, server → client. - [Clear Dialog](https://mc-protocol.vercel.app/packets/play/cleardialog): Play 0x8B, server → client. - [Show Dialog](https://mc-protocol.vercel.app/packets/play/showdialog): Play 0x8C, server → client. ## Types - [Wire types](https://mc-protocol.vercel.app/types): The primitive types every packet is built from, and what JavaScript values they map to. ## Agent resources - [llms-full.txt](https://mc-protocol.vercel.app/llms-full.txt): The full Markdown of every page in one file. - [Page Markdown](https://mc-protocol.vercel.app/index.md): Append `.md` to any page URL to fetch that page as raw Markdown. - [JSON API](https://mc-protocol.vercel.app/api/docs/pages.json): Page index of the JSON docs API; each entry links the page's JSON and Markdown forms. Described by the OpenAPI document at https://mc-protocol.vercel.app/openapi.json. - [API catalog](https://mc-protocol.vercel.app/.well-known/api-catalog): RFC 9727 linkset of the APIs documented here. - [agent-readability.json](https://mc-protocol.vercel.app/agent-readability.json): Manifest of every agent-facing artifact on this site. - [Sitemap](https://mc-protocol.vercel.app/sitemap.xml): Every indexable page URL with its last-modified date.