Query_vars support in Rest API

correct me, if i’m wrong, but query vars are not processed in REST requests. but there is other ways to make this work. not really sure, if this will help with your problem but hopefully it is at least a push in the right direction

function so380236_rest_cpt_query($args, $request)
{
    $query_params = $request->get_query_params();

     if (!array_key_exists('city', $query_params)) {
        //$args is your WP_Query[$args] array
        //example:
        $args['posts_per_page'] = 12;
    }

    return $args;
}

add_filter('rest_cpt_query', 'so380236_rest_cpt_query', 10, 2);

the posts_per_page is just a jibberish example for you to understand, you could create/manipulate meta and or tax queries etc…

link to the filter in use.