PyCoast can overlay 'cities' that you simply specify by name.
It reads locations from a file db_root_path/CITIES/cities.txt
This is a tab delimited text file. It can be viewed in editors.
PyCoast uses four fields: name, asciiname, latitude, longitude.

The files can either be used in their original sizes or heavily
size reduced with the help of Python script reduce_cityfiles.py.
We produced 5 different files based on files cities5000.zip and
cities15000.zip that can be downloaded from  www.geonames.org.

Cities with population>1000000  20000 Sep 13 13:33 megacities.red
Cities with population>15000  1182780 Sep 13 13:22 cities15000.red
Cities with population>5000   2427875 Sep 13 13:25 cities5000.red
Capitals only                   10427 Sep 13 13:31 capitals.red

Move the file that best fits your needs from archive cities2022.zip
(no need to decompress everything) to .../geodata/CITIES/cities.txt
Most users probably want to install cities15000.red or cities5000.red
For more information check README_GeoNames.txt and reduce_cityfiles.py