Уроженец Москвы начал заниматься баскетболом в родном городе. В составе юниорской команды ЦСКА Михаил стал чемпионом Первенства ДЮБЛ.
В 2010 году КУЛАГИН присоединился к системе баскетбольного клуба «Триумф», в котором прошёл путь от игрока ДЮБЛ до основной команды.
Летом 2015 года Михаил подписал 5-летний контракт с ЦСКА. В составе армейцев баскетболист стал двукратным чемпионом Евролиги и 4-кратным чемпионом Единой лиги ВТБ. За основную команду ЦСКА провёл 91 матч, в среднем набирая 5.0 очка, 1.0 подбора, 1.5 передачи и 0.5 перехвата.
В сезоне 2020/2021 Михаил Кулагин защищал цвета Красноярского «Енисея», где стал одним из лидеров команды под руководством Дражена Анзуловича. В Единой лиге ВТБ статистика Михаила составила 13.5 очка, 2.7 подбора, 2.6 передачи и 0.7 перехвата.
В минувшем сезоне баскетболист выступал за «Нижний Новгород». В 20 играх чемпионата Единой Лиги ВТБ Михаил Кулагин забивал 9.3 очка, добавляя к ним 2.7 подбора, 2.1 передачи за 24 с половиной минуты на площадке. В 5 матчах Лиги Чемпионов ФИБА защитник приносил команде в среднем 12 очков, 2.8 результативных передачи и 1.8 подбора за 27 минут игрового времени.
В 2018 и 2021 году новичок УНИКСа принимал участие в Матче Всех Звезд Единой Лиги ВТБ в составе команды «Звезды России».
Михаил Кулагин, защитник БК УНИКС:
«Рад присоединиться к УНИКСу – клубу с богатой историей и победными традициями! Спасибо руководству клуба и тренерскому штабу за доверие. Уверен, в предстоящем сезоне нас ждут яркие баскетбольные баталии. Вперед, бело-зеленые!»