PumboProx is a Minecraft proxy written 100% in Rust for the best performance with low resource use: about 20 MB of RAM.
It sits in front of your Pumpkin servers and moves players between them.
Plugins run on the proxy as small WebAssembly files.
It also downloads and runs your Pumpkin servers; installing other server software and plugins (with PumboPM) straight from the proxy is planned.
The proxy Β· The plugins Β· Get started Β· Documentation Β· Roadmap Β· Important Β· Contributing Β· Security
|
π§± 1.21 β 26.3 |
π€ Premium + offline |
|
π§© WASM plugins |
π‘οΈ Checked before they join |
The next release will bring a major refactor, bug fixes, security hardening, and safety improvements.
It will also mark a return to alpha - beta was announced too early, and I'm sorry for rushing it.
The configuration format, plugin API, and internal architecture may still change.
one network, one login
Nagranie.2026-10-8.discord.mp4
Two players on one network: the bot check in a virtual world, a premium login without a password, a new account with /register, /server between lobby and survival, and a ban that follows the player across the whole network.
Every change: changelog.
Note
PumboProx is in beta (0.2.5-beta). Everything marked as available below works and is covered by tests against real Pumpkin servers. Try it on a test network before you put players on it.
| Feature | ||
|---|---|---|
| βοΈ | Written in Rust | One small program, no Java. About 20 MB of RAM on its own; each plugin adds about 20 MB, so about 100 MB with Filter, Auth, Bans and Perms. |
| π§± | Versions 1.21 β 26.3 | Players on older clients join your 26.3 servers. The proxy translates the protocol. |
| π€ | Premium and offline together | Mojang accounts log in automatically, everyone else uses a password (with PumboAuth). Decided per player; without PumboAuth keep online-mode: true. |
| β‘οΈ | Modern forwarding | The real UUID, IP and skin reach every server. Pumpkin supports it out of the box. |
| π | Server switching | /server, /glist, /send, /find, /alert, a fallback server when one goes down, forced hosts. |
| π§© | PumboAPI | One API for every plugin: services, placeholders, permissions, per-server and per-group config. |
| π | PumboVir | Virtual worlds on the proxy. Bot checks and logins happen before a player reaches any server. |
| π₯οΈ | Servers from the proxy | Download Pumpkin, then create, start and stop servers from the game. How |
| π¦ | Pumbox | With no server available, players wait in an empty world instead of being kicked, and move to a server as soon as one is ready. |
| π | PumboBridge | Moving players between servers works without it. With PumboBridge on a server, the proxy can also act inside it: teleport within the world, change game modes, read inventories, apply its ranks and see the server's TPS. |
| π‘οΈ | Built-in protection | Connection limits, packet limits, flood kicks, encrypted logins. |
| π | Readable YAML config | Plain files with comments. Errors point to the exact line. |
| π | Metrics | A Prometheus endpoint for your dashboards. |
| π | No telemetry | Nothing leaves your machine. |
| Feature | ||
|---|---|---|
| π¦ | One file per plugin | Drop the plugin's .wasm file into plugins/. On the first start the plugin creates its folder and a commented config.yml. |
| π | Plugins find each other | Pumbo plugins detect each other and work together. Take one away and the rest keep running. |
| π | Whole network or solo | Run a plugin on the proxy for the whole network, or standalone on a plain Pumpkin server. |
| ποΈ | Per-server and per-group config | One plugin, different settings for lobby, survival and minigames. |
| π | Network-wide permissions | Server, group and global contexts in one permissions.yml. |
| β»οΈ | Reload without a restart | Update a plugin and reload it while players stay online. |
| π§ͺ | Sandboxed plugins | A plugin sees only its own config and data folders and has no network access. |
| π§° | Plugin SDK | MIT/Apache-2.0. Write your own plugins under any license. |
Every plugin keeps its logic in one place and comes in two builds:
one for the proxy (the whole network) and one for a plain Pumpkin server.
Plugin Version Compatibility
Every Pumbo plugin comes in two builds: Proxy (network-wide functionality) and Standalone (individual Pumpkin servers).
β οΈ To run Pumbo plugins on a proxy and enable network-wide functionality, you must download the-proxyversion from the latest GitHub release of the plugin's repository. Inside Pumkin you can run a standalone versions from market or use any other.
| Plugin | What it does | Proxy | Pumpkin | Status |
|---|---|---|---|---|
| π‘οΈ PumboFilter |
Anti-bot checks in a virtual world | β | β | |
| π PumboAuth |
One account for the whole network, premium auto-login, passwords, 2FA | β | β | |
| π« PumboBans |
Bans, mutes and warnings across all servers | β | β | |
| π₯ PumboPerms |
Ranks, groups and permissions for the whole network, imports what you already have | β | β | |
| π PumboBridge |
Lets the proxy act inside each server: teleports within the world, game modes, inventories, ranks, TPS | β | β | |
| π¦ PumboPM |
Plugin manager: install, update and turn plugins on and off from the proxy | π | π | |
| π·οΈ PumboPHAPI |
Placeholders for every plugin on a standalone Pumpkin server (the proxy has its own built in) | π | ||
| π PumboTabasco |
Tab list, scoreboard, boss bars, name tags and network chat | π | ||
| ποΈ PumboDB |
One SQL database for all Pumbo plugins: SQLite, MySQL, MariaDB, PostgreSQL | π | π | |
| π PumboCore |
Everyday essentials: /home, /spawn, /tp and more |
π | π | |
| π° PumboGuard |
Region protection, managed from the proxy | π | π |
You don't wire anything up. Each Pumbo plugin looks for the others when it starts and uses what it finds. Take one away and the rest keep running on their own.
| When you have | What happens |
|---|---|
| PumboFilter + PumboAuth | A new player passes the bot check and goes straight to the login, in the same connection, with no reconnect screen. |
| PumboFilter + PumboBans | Addresses that keep failing the bot check get a temporary IP ban through PumboBans (auto-ban in the config). |
| PumboBans + PumboAuth | A ban ends the player's login sessions, so after the ban is lifted they type their password again. |
| PumboPerms on the proxy + PumboBridge | Ranks you set on the proxy with /pp apply on every server right away. A PumboPerms that also runs on a server steps back and lets the proxy decide. |
| Any plugin + PumboBridge | The plugin can teleport players within a server's world, change game modes or open inventories on any server, and read %server_tps:lobby% and other placeholders. |
Want to write your own? See the plugin SDK (MIT/Apache-2.0, any license for your plugin).
Pumbo plugins find each other and work together, and a new player passes the bot check and the login in a virtual world before any server sees them: see How it works.
- Get PumboProx: the file for Linux, Windows or macOS from Releases, the Docker image
ghcr.io/pumbomc/pumboprox, or build it with Cargo. - Start it with
./pumboprox. On the first start it writespumboprox.yml,forwarding.secretandplugins/itself. - Join and become an operator with the code from the console:
/prox claim <code>. - Get a server:
/prox download pumpkin, then/prox servers new lobby. Until it is ready you wait in the Pumbox, then you move there.
Step by step, with the config and Docker: Get started.
| Command | What it does |
|---|---|
/server <server> |
Go to another server, or list them |
/send <player|all|current> <server> |
Move players to a server |
/prox |
The proxy commands you may use (help with pages and tooltips) |
/prox servers |
Servers run by the proxy |
/prox op <player> |
Make a player an operator (/prox deop takes it away) |
/prox claim <code> |
Become the first operator of a new network |
/pf /pa /pb /pp |
PumboFilter, PumboAuth, PumboBans, PumboPerms |
Every command and permission: Commands.
| Page | What's in it | |
|---|---|---|
| π | Get started | Downloads, Docker, the config, setting up Pumpkin, plugins, permissions |
| βοΈ | Configuration | Every key of pumboprox.yml with its default, and whether reload applies it |
| π₯οΈ | Servers from the proxy | Downloading Pumpkin, creating and running servers, the way into the network |
| β¨οΈ | Commands | Every command and permission of the proxy, plugin commands |
| π | PumboBridge | Setting up the bridge and what the proxy can do with it |
| π§ | How it works | The whole picture, how a player gets in, how plugins work together |
| π§° | Writing plugins | The SDK, the interface and an example plugin |
| π | Changelog | What changed in each release |
| What | ||
|---|---|---|
| β | Core proxy, forwarding, server switching | done |
| β | Plugin host (PumboAPI), virtual worlds (PumboVir) | done |
| β | Version translation 1.21 β 26.2 β 26.3 | done |
| β | PumboFilter, PumboAuth, PumboBans, PumboBridge | beta |
| β | PumboPerms for the whole network | beta |
| β | 0.1.0-beta.1: downloads for Linux, macOS and Windows, Docker image | released |
| β | Server management from the proxy: download Pumpkin, create and manage servers (thanks to @Uncover-F for the great idea) | released (0.2.0-beta) |
| β | Run and play: the Pumbox, /prox claim, a config written on the first start |
released (0.2.5-beta) |
| π | Paper servers from the proxy: download and run them like Pumpkin | planned |
| π | HTTP API for panels and hosting: servers, players, bans | planned |
| π | Ready templates for hosting panels, setup wizard, signed Windows files | planned |
| π | Translation in both directions (newer clients on older servers) | planned |
| π | PumboPM, PumboPHAPI, PumboTabasco, PumboDB, PumboCore, PumboGuard | planned |
| π | Web panel built into the proxy | planned |
| π | Clients older than 1.21, in our own translator | planned |
| π | Bedrock players | planned |
Warning
Pumpkin 0.2.0 lets every player use /tp, /xp, /banip and /pardonip. In the official 0.2.0 release (and in 0.1.0-dev) these aliases skip the permission check of the command they stand for, so on a plain server anyone can teleport, give experience and ban IP addresses. Pumpkin fixed it after 0.2.0 (#3801). PumboBridge and PumboPerms block the four aliases on the server for players without the permission. If you run neither of them, update Pumpkin to a build with the fix.
- Tab completion for plugin commands is partial. For a plugin command the proxy suggests the plugin's subcommands and then the names of online players. Suggestions for every argument (durations, group names, servers) come once plugins can answer completions themselves.
- A server on the older Pumpkin 0.1.0-dev (Minecraft 26.2) accepts only 26.2 players for now; every version will be able to join it once the translation works in both directions.
- A big refactor of the code is planned.
- PumboPM, PumboPHAPI, PumboTabasco, PumboDB, PumboCore and PumboGuard are planned, not part of this release. PumboDB will be one shared SQL database (SQLite, MySQL, MariaDB, PostgreSQL) for all Pumbo plugins.
/prox download paperanswers "coming soon": Paper servers from the proxy come in a later beta.
Bug reports, fixes and plugins are welcome. CONTRIBUTING.md explains how to build the proxy, run the tests and start a test network on your machine with one command. Report security problems privately, as described in SECURITY.md.
PumboProx is licensed under the GNU General Public License v3.0. The plugin SDK, the WIT interface and the shared libraries for plugins are dual-licensed under MIT and Apache-2.0.
Windows files are signed starting with 0.2.1-beta: see the code signing policy.
PumboProx is not affiliated with Mojang, Microsoft or the Pumpkin project.
Like PumboProx? A β on GitHub helps other server owners find it.






