The shard.url parameter contains a list of all replicas for a shard. One of those is chosen by the HttpShardHandler to execute the request. So, it is used only within the context of processing request on a distributor node as a special storage for a list of replicas urls between the prep and execution phase of HttpShardHandler. There is no real need to send this parameter down to the chosen shard.
However, Hoss pointed out to me that removing this would break ShardAugmenterFactory so we need to figure out if/how we can do this. Personally, I don't think it is at all useful to write down all replicas with the document without telling which replica really served the query.