mcproxy

McProxy setup

Pick the download you have. Both end the same way: a server address, a port and a login you can put into any proxy client.

Set up the plugin

  1. Add the JAR

    Put MCProxy-1.3.0.jar in your server’s plugins/ folder.

  2. Open one more port

    The proxy cannot share the Minecraft port, so give the server a second one, opened for both TCP and UDP. On Pterodactyl that is the Network tab. On your own machine it is the firewall or router.

  3. Start the server and set the port

    Run this in the server console with the port you just opened. It applies right away, no restart needed.

    Server console
    mcproxy setport 25566
  4. Get your login

    Open plugins/MCProxy/config.yml. The username is mcproxy and the password was generated on first start. It is only ever written to that file, never to the console or the log.

Using UDP behind NAT, Docker or a panel? UDP clients also need to be told your public IP. Run mcproxy setpublicip followed by your server’s address.

Set up standalone

  1. Upload the JAR

    Put mcproxy-standalone-1.0.jar in the server’s root folder.

  2. Make it the server JAR

    On Pterodactyl, set SERVER_JARFILE to the file name on the Startup tab and choose a Java 21 image. Anywhere else, start it like any other JAR.

    Without a panel
    java -jar mcproxy-standalone-1.0.jar
  3. Start it

    On Pterodactyl it listens on the server’s primary allocation. Elsewhere it uses server-port from server.properties if that file exists, and 1080 if not.

    Console on first start

    [MCProxy/INFO]: Starting MCProxy Standalone 1.0 on Java 21

    [MCProxy/INFO]: SOCKS5 TCP+UDP and HTTP/HTTPS listening on 0.0.0.0:25565; port source: Pterodactyl SERVER_PORT; authentication required.

    [MCProxy/INFO]: Credentials are saved in mcproxy.properties. Enter help for console commands.

    [MCProxy/INFO]: Done (0.000s)! For help, type "help". MCProxy Standalone is ready.

  4. Get your login

    Open mcproxy.properties, which appears next to the JAR. The username is mcproxy and the generated password is on the authentication.password line.

Connect an app

Any app with a SOCKS5 or HTTP proxy setting will work. Put these in, then test it from a terminal.

TypeSOCKS5 or HTTP
HostYour server’s IP address, the one players join with
PortThe proxy port
Usernamemcproxy
PasswordFrom config.yml or mcproxy.properties

Some apps take one address instead of separate fields. That looks like socks5://mcproxy:PASSWORD@YOUR_SERVER_IP:25566, or the same with http:// in front.

Test SOCKS5
curl --proxy socks5h://YOUR_SERVER_IP:25566 --proxy-user mcproxy https://example.com
Test HTTP and HTTPS
curl --proxy http://YOUR_SERVER_IP:25566 --proxy-user mcproxy https://example.com

Swap in your own IP and port. curl asks for the password, and if the page comes back, the proxy works.

What next

The commands page lists everything you can do from the console, and every setting in the config file. Something not working? The FAQ covers Pterodactyl, HTTPS and UDP.