Keychain

Switch between Microsoft and offline Minecraft accounts in-game with the real Microsoft login. No codes, no restart, encrypted at rest.

18

Quick challenge

How far can you run before the mobs catch you?

Keychain

Keychain

real Microsoft sign-in page A *Keychain* button is added to your title screen and pause menu. Click it, pick *Add Online*, and the real Microsoft sign-in page opens in your browser. Sign in normally — email, password, 2FA — and your account appears in the list. Click any saved account to switch to it instantly.

Features

- 🔑 Clean UI — click any saved account in the list, you're switched. No restart. - 🌐 Clean UI — opens `login.microsoftonline.com` in your browser. Same form Microsoft uses everywhere. Email, password, 2FA, all official. - 👤 Clean UI — pick a username, switch immediately. Same `OfflinePlayer:` UUID derivation vanilla uses. - 🔒 Clean UI — your saved tokens are AES-GCM-encrypted with a key tied to your machine. Anyone who copies your `.minecraft` folder gets unreadable data. - 🚫 Clean UI — only talks to Microsoft and Mojang's official endpoints. No phoning home, no analytics. - ⚡ Clean UI — ~50 KB jar. No bundled browser, no native libs. - 🧹 Clean UI — top-left button, two big actions, click-to-switch, right-click-to-remove.

How it works

Keychain uses the OAuth 2.0 Authorization Code flow with PKCE — the same flow MultiMC, Prism Launcher, and Auth Me use. When you click *Add Online*:

1. Keychain starts a tiny local HTTP server bound to `127.0.0.1` on a random free port. 2. Your default browser opens to the official Microsoft sign-in page. 3. You sign in with your real credentials. 2FA and security keys work normally. 4. Microsoft redirects back to `http://localhost:<port>/callback`. 5. Keychain captures the auth code, exchanges it through the standard Microsoft → Xbox Live → XSTS → Minecraft Services chain. 6. Your account appears in the list, encrypted to disk.

The local server only exists during the ~5-minute sign-in window and shuts down immediately afterwards.

Privacy

- 🔐 Loopback-only of `<gamedir>/config/account-switcher.json` using a key derived from your OS user + machine name. Tokens are unreadable on any other machine. - 🚷 Loopback-only `latest.log` and crash reports never contain access tokens, refresh tokens, or auth codes. - 🛡️ Loopback-only — protects against code interception and CSRF. - 🌐 Loopback-only outbound traffic to: `login.microsoftonline.com`, `user.auth.xboxlive.com`, `xsts.auth.xboxlive.com`, `api.minecraftservices.com`. Nothing else. - 🔒 Loopback-only local callback server (`127.0.0.1`, never reachable over your network).

Installation

1. Install Keychain for Minecraft 26.1.x. 2. Download %%MD1%% and drop it into `%APPDATA%.minecraftmods` (Windows) / `~/Library/Application Support/minecraft/mods` (macOS) / `~/.minecraft/mods` (Linux). 3. Drop the Keychain jar into the same folder. 4. Launch Minecraft. *Keychain* button is at the top-left of the title screen and pause menu.

Compatibility

- ✅ Java 25 (Fabric) - ✅ Java 25 - ✅ Client-side only (don't put it on your server) - ⚠️ Mid-server account switching may kick you — switch from the title screen for cleanest behaviour. - ⚠️ Skin doesn't refresh on a server you're already connected to. Disconnect and reconnect after switching.

FAQ

Why does the Microsoft consent screen say "Auth Me for Minecraft"? Keychain ships with a public Azure App ID registered by Why does the Microsoft consent screen say "Auth Me for Minecraft"? (axieum), used by ~9.6 million players. If that ever gets revoked, Keychain has a built-in *Use custom Azure ID* fallback to paste your own.

Is this safe for my Microsoft account? Yes. The mod opens the real `login.microsoftonline.com` — you're signing in to Microsoft directly, not to me. Verify the URL bar. Same flow as the official Minecraft launcher and every major third-party launcher.

Will my token file leak if I share my .minecraft folder? No. The file is AES-GCM-encrypted with a per-machine key. Unreadable elsewhere.

Can I sign in to multiple accounts and switch? Yes — that's the entire point. Add as many as you want, click any one to switch.

Does it work on servers? Yes for switching from the title screen / pause menu before joining. Switching mid-game on a server will likely get you kicked because the protocol session changes.

Source & support

- 🐛 **Report an issue** - 💻 **Source code**

---

*Made by Domsimus.*

ADS