A comprehensive tool for managing multiple Minecraft Java Edition servers with both GUI and web interfaces, plus advanced development tools for converting Python code to Java for Minecraft plugin development.
- Multiple Server Management: Create, configure, and manage multiple Minecraft servers from a single interface
- Server Control: Start, stop, and restart servers with ease
- Server Properties Editor: Edit server.properties files through a user-friendly interface
- Version Selection: Choose from the latest releases or snapshots
- Memory Management: Configure JVM memory allocation for optimal performance
- Dual Interface: Use either the GUI application or web interface
- Auto-Configuration: Automatically download server files and configure startup scripts
- WebSocket Integration: Real-time server monitoring and log streaming
- Python to Java Converter: Convert Python code to Java for Minecraft plugin development (Bukkit/Spigot/Paper, Forge, Fabric)
- Cross-Platform Support: Works on Windows, macOS, and Linux
- Python 3.6+
- Java 17+ (required for Minecraft 1.18 and newer)
- Required Python packages:
- customtkinter
- Flask (for web interface)
- PyInstaller (for creating executables)
- websockets (for real-time communication)
- Clone this repository or download the files
- Run the installation script:
install.bat
- Launch the application using one of the following methods:
- Run
launch.batfor the unified launcher - Run
launch.bat --guito launch the desktop GUI directly - Run
launch.bat --pythonto launch the Python web interface directly - Run
launch.bat --phpto launch the PHP web interface directly
- Run
- Clone this repository or download the files
- Install required Python packages:
Or install packages individually:
pip install -r requirements.txtpip install customtkinter flask requests pillow - Ensure Java 17+ is installed and available in your PATH
The easiest way to use the Minecraft Server Manager is through the unified launcher:
- On Windows, double-click
launch.bat - On other platforms, run
python gui_launcher.py
This will open the launcher interface with three options:
- Desktop GUI
- Python Web Interface
- PHP Web Interface
Run the desktop application:
python mc_server_manager_gui.py
Menu Bar Overview:
- File: New Server, Import/Export configs and server lists, Open Project/Configs directories, Exit
- Server: Server Management (New/Edit/Delete/Clone) and Server Control (Start/Stop/Restart selected, Start/Stop all)
- Tools: Development Tools (Python to Java Converter), Server Tools (Java check, Download JAR, Backup/Restore), Web Interfaces (Python/PHP Web GUI, WebSocket Server)
- View: Interface (switch tabs) and Theme (Dark/Light/System), Refresh All
- Help: Documentation (User/Quick Start/WebSocket/Installation) and Support (Report Issue, Check Updates, System Info), About
Start the Python web server:
python web_gui.py
Then open a browser and navigate to http://localhost:5000
Start the PHP web server:
php -S localhost:8000
Then open a browser and navigate to http://localhost:8000/index.php
For basic server setup via command line:
python mc_server_setup.py --version latest --dir ./my_server --min-memory 1G --max-memory 2G --nogui --accept-eula --start
-
Create a New Server:
- Specify a name, directory, and Minecraft version
- Set memory allocation and other options
- Click "Create Server"
-
Start/Stop Servers:
- Select a server from the list
- Use the control buttons to manage the server state
-
Edit Server Properties:
- Select a server in the Server Control tab
- Navigate to the Server Properties tab
- Modify settings and save changes
mc_server_manager_gui.py: Main GUI applicationmc_server_setup.py: Core functionality for server setup and managementweb_gui.py: Web interface using Flasktemplates/: HTML templates for web interfaceicons/: Status icons for the GUIpython_to_java_converter.py: Convert Python code to Java for Minecraft plugin developmentcreate_exe.py: Build standalone executables (.exe) for Windows
Convert Python code to Java for Bukkit/Spigot/Paper, Forge, or Fabric:
- Basic usage (Bukkit by default):
python python_to_java_converter.py path\to\your_input.py - Specify platform and package:
python python_to_java_converter.py your.py -o MyPlugin.java -p bukkit --package com.example.myplugin - Platforms:
-p bukkit|forge|fabric
Notes:
- Maps common Python features to Java equivalents and adds platform imports
- Infers simple types by parameter names (player, event, world, etc.)
- A starting point; complex Python features may need manual adjustment
This project is open source and available for personal and educational use.
Developed by AsanCraft DEv
Note: This tool is not affiliated with Mojang or Microsoft. Minecraft is a trademark of Mojang Synergies AB.