BedrockTunnel is a desktop MITM packet capture tool for Minecraft: Bedrock Edition. It sits between one Bedrock client and one target server, captures traffic in both directions, and provides a desktop UI for inspection and control.
- 🖥️ A desktop GUI built for live packet inspection
- 🌐 Live traffic capture between a Bedrock client and a target server
- 📦 Packet details in
Summary,JSON, andHexviews - 🔎 Packet filtering by direction, state, type, and keyword
- 🚫 Packet blocking with blacklist and whitelist modes
- 🙈 Packet hiding rules for decluttering the live packet list
- ⏸️ Packet breakpoints with forward, drop, and resume controls
- 🔁 Basic packet replay during a live session
- 📊 Traffic statistics and per-packet counts
- 🗂️ Saved capture history with offline review
- Java 21
- Gradle 9.4.1
- A Bedrock client and target server using the same protocol version selected in the UI
The GitHub nightly prerelease includes a Windows app image zip that can be unpacked and launched directly without installing Java separately.
- Download the Windows package from the
Nightly Buildrelease artifacts - Unzip it
- Run
BedrockTunnel.exe
BedrockTunnel currently supports the following versions:
Version list
1.7.0/v2911.8.0/v3131.9.0/v3321.10.0/v3401.11.0/v3541.12.0/v3611.13.0/v3881.14.0/v3891.14.60/v3901.16.0/v4071.16.20/v4081.16.100/v4191.16.200/v4221.16.210/v4281.16.220/v4311.17.0/v4401.17.10/v4481.17.30/v4651.17.40/v4711.18.0/v4751.18.10/v4861.18.30/v5031.19.0/v5271.19.10/v5341.19.20/v5441.19.21/v5451.19.30/v5541.19.40/v5571.19.50/v5601.19.60/v5671.19.63/v5681.19.70/v5751.19.80/v5821.20.0/v5891.20.10/v5941.20.30/v6181.20.40/v6221.20.50/v6301.20.50 (NetEase)/v6301.20.60/v6491.20.70/v6621.20.80/v6711.21.0/v6851.21.2/v6861.21.2 (NetEase)/v6861.21.20/v7121.21.30/v7291.21.40/v7481.21.50/v7661.21.50 (NetEase)/v7661.21.60/v7761.21.70/v7861.21.80/v8001.21.90/v8181.21.93/v8191.21.93 (NetEase)/v8191.21.100/v8271.21.111/v8441.21.120/v8591.21.124/v8601.21.130/v8981.26.0/v9241.26.10/v944
Build the project:
./gradlew buildCreate the fat jar explicitly:
./gradlew shadowJarCreate a Windows app image with a bundled runtime:
./gradlew.bat packageAppImageThe runnable jar is written to:
build/libs/BedrockTunnel.jar
The Windows app image is written to:
build/packaging/app-image/BedrockTunnel/build/packaging/app-image/BedrockTunnel/BedrockTunnel.exe
Run from Gradle:
./gradlew runRun the fat jar directly:
java -jar build/libs/BedrockTunnel.jar- Start BedrockTunnel.
- Enter the local listen host and port.
- Enter the target Bedrock server host and port.
- Select the Bedrock protocol version.
- Click
Start. - Point the Bedrock client to the local listen address instead of the real server.
- Top bar: tunnel settings and live controls
- Center: packet list on the left and packet details on the right
- Bottom tabs: rules, statistics, and capture history
Summary: packet metadata and current stateJSON: serialized packet contentHex: raw packet bytes
You can filter the packet list by:
- Direction
- State
- Packet type
- Keyword
Keyword matching checks packet names, summary text, JSON text, and hex text.
- Blocking rules can work in
BLACKLISTorWHITELISTmode - Rules currently match by direction and packet type
Hiderules remove matching packets from the packet list without affecting forwarding- Breakpoints pause live traffic when a matching packet appears
Blockrules stop matching packets from being forwarded- While paused, you can forward or drop the breakpoint packet, then resume queued traffic
- Replay is available in live mode
- It resends the selected captured packet with its original direction
- Packet editing is not included yet
- Offline history replay is not included yet
The Stats tab shows:
- Total packet count
- Total byte count
- Total replay count
- Breakpoint hit count
- Per-packet-type counters
Captured sessions are saved locally and can be reopened from the History tab for browsing, filtering, and reviewing packet details later.
