Projects

Commander Deck Check

A desktop app that checks a Magic Commander deck against the rules and against your own collection.

What
Desktop tool, open source
Status
Open source, MIT licence
Stack
Python, Tkinter, MTGJSON, Scryfall, EDHREC

What it is

A desktop app for Magic: The Gathering's Commander format. You give it a deck list and a commander, and it tells you:

  • whether the deck follows the Commander rules: exactly 100 cards, a legal commander, and colour identity respected;
  • which commanders you could build around with the cards you already own;
  • EDHREC suggestions for your commander;
  • current card prices from Scryfall.

Card data comes from MTGJSON's full printings file, so it knows every printing and format.

How I built it

I built it with Gemini CLI, writing the tool through an AI coding agent, and later extended it with Claude Code.

Interesting bits

  • The UI stays responsive. The large data file loads on a background thread, and long checks can be stopped with a Stop button.
  • Prices are cached (12 hours by default, adjustable in the settings), so repeated checks don't hit Scryfall again.
  • Real-world data fixes. Accented card names are normalized before they go into EDHREC URLs, which used to return 403 errors. Double-faced cards get the right URL.
  • Ships as a single executable. A PyInstaller script builds it for Linux, with instructions for a Windows build.