Микола Буй народився 22 травня 1996 року. Почав тренуватися в Червонограді, у тренера Романа Марича[1]. У ДЮФЛУ з 2009 по 2013 рік виступав у складі «Львова».
У липні 2016 року підписав контракт із представником Першої ліги маріупольським «Іллічівцем»[2]. У складі «Іллічівця» дебютував 26 серпня 2016 року в матчі Першої ліги проти клубу «Оболонь-Бровар»[3]. Також виступав у складі друголігового фарм-клубу приазовців, команді «Іллічівець-2».
26 червня 2017 року став гравцем «Руху» (Винники)[4]. У цій команді Микола провів два сезони у першій лізі, утім у кінці сезону 2018/19 Буй зазнав важкої травми і по його завершенню «Рух» відпустив гравця вільним агентом[5].
Відновившись від травми у жовтні 2019 року Буй підписав угоду з «Агробізнесом»[6]. 27 жовтня дебютував у складі волочиської команди в матчі 15 туру в першій лізі в Києві проти «Оболонь-Бровара» (1:2), втім закріпитись у клубі не зумів, зігравши до кінця року лише 4 гри у чемпіонаті і у лютому 2020 року покинув клуб, контракт розірвано за згодою сторін[7].