Bring a large pot of hot water to a boil. Add the pasta and cook to al dente according to the package directions. Reserve 1 cup of the starchy pasta water before draining.
Melt the butter in a large skillet using medium heat. Add the shallots or red onions and cook for several minutes until they are soft. Then add the minced garlic and stir while cooking for an additional 30 seconds.
Add the cream cheese cubes, lemon juice, and ¾ cup of pasta water to the pan. Cook while stirring consistently until the cream cheese is melted and the sauce begins to bubble.
Add the pasta and toss it to coat completely. Then, stir in the Parmesan cheese, salt, and pepper. Pour in additional pasta water, if needed, to reach your desired sauce consistency.
Gently stir in the salmon and tomatoes. Sprinkle chives or green onions over the top when serving.