Get protein annotation from Uniprot out of protein mappings
This problem is discussed here. Apparently STRING IDs are in KEGG format but these can be mapped on to Uniprot IDs using information downloadable from here. I guess that it is either the protein.aliases data or the mapping_files data that you would need. The first link provides a Python script to extract useful info from the downloaded data. These are big downloads so I haven't actually tried this out myself.

Presumably once you have the STRING→Uniprot conversion done you can query Uniprot with the output as a batch request.

Good luck!