The JSON based loading of the plugin exists since ~6 years. Maybe KF6 would be a good time to get rid of the old .protocol files?
The only usecase where the JSON metadata is not a drop-in replacement is for protocol files which only provide metadata and not an actual ioslave (like mailto), as discussed in https://invent.kde.org/frameworks/kio/-/merge_requests/362#note_246537