Simple: add a property "level" that will return the level(s) of the matching mask
I already know about $level(mask), but the problem is that if there is an entry before it that matches (because of wildcards), then it'll return that level instead of the one you are looking for. And perhaps add more functionality by having $ulist(mask,-1) return an EXACT matching entry, or $null if there is none. (So if you have *!*@1.2.3.* and *!*@1.2.*.*, in that order, and search for $ulist(*!*@1.2.*.*,-1) will return only that entry, and the properties would return the "info" or "level" for that entry as well).
Perhaps also adding to the $level identifier, $level(mask,N), 0 tells total match masks, and a number would return the level(s) for the Nth matching mask.

Now, if there is already an identifier that does all this (besides $level, for the aforementioned reason), please do tell me. Otherwise, be nice to see this added to the next release of mIRC