You're not really missing anything, except your definition of installed might be a bit different from mine.
Jobe reports as "installed" all the languages for which a <language>_task.php file exists. If Jobe is installed using the apt install commands in the documentation, the set of language task files should match the set of languages actually installed on the server.
There's also a folder libraries/DisabledLanguageTasks. If you don't want to support a particular language in Jobe you should move the language task PHP file into that folder. You'll see there's a file matlab_task.php in there already because Matlab isn't installed by default, for obvious reasons.
Reporting of language version numbers is essentially nonsense. In a rare act of self-discipline, I wrote the API spec before implementing Jobe. I specified that both the language name and the language version number would be returned on a GET LANGUAGES request. However, CodeRunner doesn't use the version numbers so I then just hard-coded whatever version was currently installed. It might have been less confusing if I'd just returned a zero in all cases.
Changing the getVersion method to return the actual version number for each language wouldn't be hard, but it wouldn't actually achieve anything, either.