Check from where you make music.
Every integration does the same three things: takes the MIDI, sends it to Ky, opens the result. The first time, it asks you to connect — a code, a click, done. Keys live under Plugins & API keys.
Suno and Udio — Chrome extension
Download a MIDI from a song's menu (Suno: ··· → Get MIDI; Udio: Download → MIDI) and Ky checks it and shows a notification. Drop any MIDI file on the Ky popup to check it directly.
Get the extension Load it unpacked from plugins/browser-extension (chrome://extensions → Developer mode → Load unpacked). Web Store listing to follow.
REAPER — ReaScript
Select MIDI items, run Check with Ky. The notes go straight from REAPER to Ky and the result opens in your browser.
Get KY_Check.lua Actions → Show action list → ReaScript: Load…
Ky Drop — any DAW that exports MIDI
Logic Pro, GarageBand, Cubase, Pro Tools, Studio One, Bitwig, Reason, Dorico, Sibelius, Finale: export MIDI into the Ky Drop folder and it is checked automatically. One small script watches the folder.
python ky.py connect # once
python ky.py watch # watches ~/Ky Drop
Get ky.py Python 3, no dependencies.
Command line
The same script checks files directly: python ky.py check song.mid other.mid.
MuseScore 4
Plugins → Check with Ky exports the open score into Ky Drop; with ky.py watch running, the result opens on its own.
Your own tool
The protocol is three HTTP calls and is documented here. Device-code connect, then POST /api/v1/check, then poll.