This is a question that could lead to an actual issue.
Was it intentional to return a JSON representation of the Mapbox vector tile when requesting for format type "json"? See this line.
Or should that toJSON be replaced with toGeoJSONSync?
If the current implementation is correct then is there a design or requirements reason for it? My amateur understanding is that .mvt is provided as a protobuf and made for rendering. I'd imagine viz libraries expects it in pbf so what good is a JSON representation?
Thanks