> And this is what I'm wondering... could/should this be done with an LV2 extension?
>

I'm not qualified to answer that. Although, something like the HTTP Accepts header and content negotiation comes to mind.