Ну, самый очевидный пример - это использование готовых абстракций из ТК для интеграции некоторого кода с другими библиотеками или разных библиотек друг с другом. Я об этом немного более подробно пишу тут:
appliedscala.com/blog/2016/fp-in-java8-kotlin-scala
Если нужен конкретный пример, то вот возьмите, например, библиотеку Monix. Эта библиотека помимо всего прочего предагает такой тип как Task - что-то вроде Future, но "ленивый". Если некий код работает с Future'ми, то запихать в него Task конечно можно, но это потребует дополнительных усилий. А вот если этот код работает с type class'ом Monad (например в редакции от Cats), то проблем не будет никаких, так как и для Future и для Task можно найти/написать самому соответствующий инстанс. Здесь на самом деле используется не ТК в чистом виде, а сочетание category theory + type classes, но в Scala они всегда идут вместе.