How would the XML file have the variable replaced? Would you be modifying it as part of delivery to the client? If your repository is a share present on all package servers, and all you are doing is delivering an application to clients along with an XML, you could use a script to parse the XML and replace 'server' with the package server name. You could get the package server name by parsing the log.xml file.
Depending on the frequency of use, it would seem that perhaps they could use a central source, e.g. the NS, for these files. Or you could elect a single package server (e.g. a package server at the central office) as the source.
If they were in WinPE, you could use %ALTIRIS_PXE_SERVER% and you would definitely have the package server. But no such variable exists in Windows because it has more to do with codebases and finding a list of package servers with the package available, and choosing from that list.
If site assignment is tight, then all clients are in a subnet, each subnet is part of no more than one site, and there are separate site servers for each site, then you could target this based on site/subnet. But it wouldn't be an on-the-fly modification of the Lenovo .xml file.