For some plugins their compatibility depends on the given arguments at runtime (e.g. given paths, etc.). Currently there is no way to determine in Plugin.check_compatible if said plugin will be compatible at runtime. Exposing the parser of the function or plugin would enable that check before calling the plugin function or method.