Шотландец по происхождению, Мекензи поступил на русскую службу в 1765 году мичманом, служил в Балтийском море, командовал брандвахтенным трофейным фрегатом «Ульриксдаль» и пинком «Венера».
В 1769 году на корабле «Не тронь меня» в составе эскадры Д. Эльфинстона совершил переход из Кронштадта в Портсмут, где был переведён на корабль «Святослав», на котором в составе той же эскадры пришёл в Средиземное море.
В чине капитан-лейтенанта принимал участие в русско-турецкой войне 1768—1774 годов, где находился в ряде морских сражений, в том числе и у Наполи-ди-Романья; в Чесменском бою находился в подчинении контр-адмирала С. К. Грейга и командовал брандером, при атаке турецкого корабля был ранен. 9 июля 1771 года был награждён орденом св. Георгия VI класса (№ 115 по кавалерскому списку Судравского и № 136 по списку Григоровича—Степанова)
Также за отличие в этом сражении был произведён в капитаны 2-го ранга.
В 1776 году Мекензи привёл из Архангельска в Ревель три новых фрегата. «За неразлучное в пути прибытие фрегатов к своим портам» Мекензи объявлена похвала от адмиралтейств-коллегии. Произведённый 21 апреля 1777 года в капитаны 1-го ранга, он в том же году был назначен командиром корабля «Дерись», на котором в следующем году совершил переход из Кронштадта в Лиссабон.
Произведённый 28 июня 1782 года в капитаны генерал-майорского ранга, Мекензи 1 января 1783 года переименован в контр-адмиралы с назначением для службы в Черноморский флот. Приняв эскадру из 9 фрегатов и нескольких мелких судов, с которыми ему предстояло перезимовать в почти необитаемой Ахтиарской бухте, Мекензи с помощью судовых команд начал расчистку берегов от леса и 3 июня 1783 года положил начало новому городу — Севастополю.
По инициативе Мекензи приступили к постройке адмиралтейства, магазинов, госпиталя и церкви, а также казарм и жилых домов для офицеров; его заботами устроены были каменоломни и печи для выжигания извести, а хорошо налаженное хозяйство на отведённых морскому ведомству землях давало большую часть предметов, необходимых для снабжения тогдашнего деревянного флота и питания команд.
Оставаясь начальником эскадры и держа свой флаг на фрегате «Крым», Мекензи был в сущности первым главным командиром Севастопольского порта. Памятью о его трудах осталось название Мекензиевых гор вокруг Севастополя, на которых находился его хутор, данный Мекензи Г. А. Потёмкиным в награду за службу.
Для Мекензи в Севастополе был построен дом, в котором впоследствии останавливалась императрица Екатерина II, а против этого дома начата каменная пристань, законченная графом Войновичем и названная Графской.
Недостаток средств, настоятельные требования жизни и службы, для удовлетворения которых Мекензи не жалел не только сил, но и отчасти своей репутации, не останавливаясь перед формальными упущениями для достижения лучших результатов, дали повод к обвинениям Мекензи в неправильном расходовании казённых сумм; все это преждевременно подорвало его здоровье.
Мекензи умер 10 января 1786 года в Севастополе.