MineProxy
MineProxy is a tool designed to proxy Minecraft packets from a client to a server while decoding them.
Install / Use
/learn @TheStaticTurtle/MineProxyREADME
MineProxy
MineProxy is a tool designed to proxy Minecraft packets from a client to a server while decoding them. This tool could be used for a lot of things (for example packet logging).
This proxy isn't a simple TCP tunnel, it fully implements the base of the Minecraft protocol (compression and encryption).
The proxy uses Minecraft protocol 47 as it's base, but will be updated to more recent versions
Warning
This tool is still in construction things might change. Moreover packets are not all tested (most of them are tho). If you disable play packets you might be able to use this tool for unsupported protocol versions
Config
Config is based on a python file named config.py, you can see an example in the config.example.py but here are what the values mean:
| Variable | Use | Type |
|----------------------------------|-----|------|
| MINEPROXY_PROXY_REMOTE_IP | IP of the real server | String |
| MINEPROXY_PROXY_REMOTE_PORT | Port of the real server | Int |
| MINEPROXY_PROXY_LISTEN_PORT | Port of the proxy | Int |
| MINEPROXY_PARSE_PLAY_PACKETS | Parse Play packets (disabling drastically increase performance) | Boolean |
| MINEPROXY_AUTH_USE_MICROSOFT | Try and use microsoft (xbox live) authentication Experimental | Boolean |
| MINEPROXY_AUTH_MINECRAFT_EMAIL | Email used for authenticating to mojang servers | String |
| MINEPROXY_AUTH_MINECRAFT_PASSWORD| Password used for the authentication | String |
About authentication
This tool should work just fine if you minecraft account is a mojang one.<br>
If your account is a microsoft account you can try to set MINEPROXY_AUTH_USE_MICROSOFT to True this feature is experimental as it's based on reading PrismarineJS and xbox-live-auth source code and some parts docs
About compression
This tool fully supports the compression of Minecraft packets, it will automatically adjust it's setting if it receives a SetCompression packet (It will proxy this packet back to the client)
About encryption
This tool allows connecting to servers in online mode. Since after a few packets, the network traffic becomes encrypted by the client, you can't just decode it.
This tool intercepts a EncryptionRequest packet, generate its own secrets and craft a EncryptionResponse packet to send to the server.
The Minecraft client has no idea that the traffic is being encrypted since it never received the request
Generating a EncryptionRequest packet and login into online server does mean that the tools needs to authenticate to Mojang servers, meaning that you have to enter your logins not in the Minecraft client but in the proxy itself. This is done via environment variable (or a .env file)
What's implemented right now?
All the basics allowing for packet decoding / encoding / compression and network encryption are implemented. Here is what is implemented
| Minecraft Version | Protocol Version | Coverage |
|-------------------|------------------|----------|
| 1.9 | 107 | Non-Play packets: All<br>Serverbound packets: All<br>Clientbound packets: 75/81<br>Missing packets:<br>- BossBar<br>- Map<br>- PlayerListItem<br>- WorldBorder<br>- Teams<br>- Title |
| 1.8 - 1.8.9 | 47 | Non-Play packets: All<br>Serverbound packets: All<br>Clientbound packets: 75/80<br>Missing packets:<br>- MapChunkBulk<br>- Map<br>- PlayerListItem<br>- WorldBorder<br>- Title |
Protocols migration ?
The base is V47 each protocl definition must be done in networking/McPackets/protocol_migration/protoXXXX.py this file contains a dict of packet_id/packet_class.
This file needs to be imported in the PacketClassfier.py file and added in LutManager.__init__
License
See LICENSE.md
Related Skills
clearshot
Structured screenshot analysis for UI implementation and critique. Analyzes every UI screenshot with a 5×5 spatial grid, full element inventory, and design system extraction — facts and taste together, every time. Escalates to full implementation blueprint when building. Trigger on any digital interface image file (png, jpg, gif, webp — websites, apps, dashboards, mockups, wireframes) or commands like 'analyse this screenshot,' 'rebuild this,' 'match this design,' 'clone this.' Skip for non-UI images (photos, memes, charts) unless the user explicitly wants to build a UI from them. Does NOT trigger on HTML source code, CSS, SVGs, or any code pasted as text.
openpencil
2.1kThe world's first open-source AI-native vector design tool and the first to feature concurrent Agent Teams. Design-as-Code. Turn prompts into UI directly on the live canvas. A modern alternative to Pencil.
ui-ux-pro-max-skill
60.4kAn AI SKILL that provide design intelligence for building professional UI/UX multiple platforms
ui-ux-pro-max-skill
60.4kAn AI SKILL that provide design intelligence for building professional UI/UX multiple platforms
