According to documentation, .isin takes a vararg, not a list. So, I will suggest you to covert it into vararg and then proceed. Try doing this:
val items = List("a", "b", "c")
sqlContext.sql("select c1 from table")
.filter($"c1".isin(items:_*))
.collect
.foreach(println)
Your variant with mkString compiles, because one single String is also a vararg (with number of arguments equal to 1), but it is probably not what you want to achieve.