# MultiMC Launcher: a Minecraft launcher built for predictable, separate instances

> MultiMC is a C++ desktop launcher that keeps each Minecraft installation in its own folder, with its own mods, worlds and Java settings. It is a tool for people who run several packs at once, not for casual players who launch the game once a week.

**MultiMC/Launcher** — A custom launcher for Minecraft that allows you to easily manage multiple installations of Minecraft at once

- Repository: https://github.com/MultiMC/Launcher
- Website: https://multimc.org/
- Stars: 4,670 · Forks: 1,036
- Language: C++
- License: NOASSERTION
- Published: 2026-09-23 · Updated: 2026-09-23 · Language: en
- Canonical page: https://hysenlabs.com/projects/multimc-launcher

## What MultiMC solves for people who run more than one Minecraft setup

The official Minecraft launcher stores versions, mods and saves in shared locations. Swap a modpack and you can end up with a mod folder that belongs to a different pack, a world that was generated by a different version, or a Java runtime that no longer matches. MultiMC's stated focus is predictability, long term stability and simplicity, and its model is one instance per setup. An instance is a self-contained directory holding the game version, mods, configs and saves for one setup. Two instances never write into each other's folders, so a broken pack can be deleted without touching the world you have played for months. This is aimed at the player who keeps a vanilla world, a modded survival pack and a test instance for a snapshot at the same time. It is not aimed at someone who installs Minecraft once and never changes it.

## How instances, Java settings and account login are kept apart

The repository splits into a launcher/ directory for the application and a libraries/ directory for shared components, built through CMakeLists.txt at the top level. The launcher manages a set of instances on disk; each instance carries its own version selection, mod list and Java arguments, so memory allocation and the Java path are per instance rather than global. That is the mechanism behind the isolation claim: changing the allocated heap for one pack does not change it for the others. Account handling is separate from instance data. The 0.6.13 release is titled Microsoft account integration, and the README states that the agreements required to interact with the Microsoft identity platform mean the source has been debranded and builds as DevLauncher by default. Anyone building from source must register their own app on Azure to handle Microsoft account logins. That is a real architectural consequence: the login path is tied to an application registration that the upstream project controls for its own builds.

## Building MultiMC from source with CMake

The README does not give install commands. It points at BUILD.md for build instructions, and the build system is CMake, driven by the top-level CMakeLists.txt with helper modules under cmake/ and build configuration under buildconfig/. The README gives no clone URL, branch name or configure command, so the exact steps and any flags belong to BUILD.md and must be read there rather than guessed. What can be said from the repository layout is that the build is CMake-based, that BUILD.md is the entry point for it, and that the source is debranded: it builds as DevLauncher unless you supply your own branding. If you only want to play Minecraft, you do not need any of this. Prebuilt packages are distributed from the project's homepage at multimc.org, which is the path the README assumes for normal users.

## The Microsoft account and branding constraint is the real limitation

The most consequential limitation is not technical but organisational. The Apache License, Version 2.0 grants access to the source, and the README is explicit that it does not grant the name, logo or other branding, nor the API tokens required to talk to the services the launcher depends on. A self-built launcher therefore cannot log in with a Microsoft account until you register your own Azure application. For an individual who just wants to build and run the launcher, that is a setup step with an external dependency and a review process you do not control. For a fork that wants to ship binaries, it means you must provide your own branding and be clear that the project is a fork without implying endorsement. The README also asks contributors to talk on Discord before submitting pull requests, and states that pull requests are not necessarily accepted. That is a gate on outside contributions, and it is worth knowing before you plan a patch.

## MultiMC compared with a launcher that bundles modpack distribution

The 0.6.12 release is titled Spring cleaning and modpack platforms, which points at the area where MultiMC differs from launchers built around a pack catalogue. A catalogue-driven launcher treats the pack as the primary object: you pick a pack from a list, it resolves the version and mods for you, and the instance is largely a product of that catalogue. MultiMC treats the instance as the primary object. You create it, choose the version, and manage the contents. That gives you control over what goes into a pack and makes it straightforward to run a hand-assembled setup that no catalogue lists. The trade-off runs the other way too: if you want one-click installation of a popular pack with automatic updates, a catalogue-first launcher removes work that MultiMC leaves to you. Neither approach is wrong; they optimise for different users.

## Maintenance status, licence and the cost of upgrading

The repository is not archived, and the last push was on 2026-07-28. The most recent tagged release listed is 0.6.14 from 2021-12-09, so the gap between the newest tag and the newest commit is wide. If you build from the develop branch, you are tracking unreleased code, and the upgrade path is whatever that branch contains rather than a versioned release. That is a maintenance cost worth pricing in: a build you make today has no tagged successor to move to. On licensing, the project is Apache 2.0 per the README, which permits redistribution of the source and of modified builds, but the same README carves out branding and service tokens from what you may use. That is a description of the project's policy, not legal advice; if you intend to distribute a build commercially, have someone qualified read the licence and the forking policy together.

## Conclusion

Adopt MultiMC if you run several Minecraft versions or modpacks side by side and want each one isolated in its own directory with its own Java and memory settings. Do not adopt it if you expect a phone client or a store-style launcher, because the repository is a desktop C++ application. Before committing, check BUILD.md for your platform's build path, confirm which Java runtimes your packs need, and read the branding and API token policy in the README if you plan to redistribute a build.

## FAQ

### Does MultiMC run on Android?

No. The repository is a C++ desktop application built with CMake from the launcher/ and libraries/ directories, and the README describes it as a custom launcher for Minecraft without mentioning a mobile client. Prebuilt packages are distributed from multimc.org.

### Where do I download MultiMC?

The README links the project homepage at https://multimc.org/, which is where prebuilt packages come from. The README itself gives no download commands and instead points at BUILD.md for people who want to build the launcher themselves.

### Can I build MultiMC and distribute it under my own name?

The Apache License, Version 2.0 covers the source, but the README states the licence does not cover the name, logo or other branding, nor the API tokens for the services the launcher depends on. The source is debranded and builds as DevLauncher by default, and you must provide your own branding and register your own Azure app for Microsoft account logins.

### How do I sign in with a Microsoft account in a self-built MultiMC?

The README states that because of the agreements required to interact with the Microsoft identity platform, you have to register your own app on Azure. The 0.6.13 release is the one titled Microsoft account integration, so the login path exists in the launcher but is tied to an application registration.

## Sources

- [Issues](https://github.com/MultiMC/Launcher/issues)
- [MultiMC/Launcher on GitHub](https://github.com/MultiMC/Launcher)
- [Project website](https://multimc.org/)
- [README](https://github.com/MultiMC/Launcher/blob/develop/README.md)
- [Releases](https://github.com/MultiMC/Launcher/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/multimc-launcher
