The British number three moved within one win of a second career ATP Tour title with a 6-1 6-4 success in 72 minutes against the Serbian sixth seed.
Edmund, seeded eighth, told the ATP website: “This is great to be back in a final, playing the matches you want to be playing.
“I obviously want to go all the way, but I’m enjoying my tennis. I’ve kept improving and learning with each match.”
Edmund’s last success came in Antwerp in 2018 and he reached his first final since then with an impressive display at the Nassau Coliseum.
The 25-year-old won the first five games as he eased through the first set.
Kecmanovic, ranked 54th in the world, stayed with Edmund in the second set until the Briton broke to love to go 5-4 up before serving out the match.
Edmun will face Italian Andreas Seppi in Sunday’s final.