Fue hijo del médico estadounidense de origen escocés Alexander MacKinney y de María del Tránsito Espinosa y Losa, hija ésta de José Martín Espinosa de los Monteros, marino, catedrático e impresor español.