Yes, you’re not eating enough calories. Calorie intake is the be-all, end-all of weight gain. What, exactly, did you eat yesterday?
At your height, weight, and relatively low bodyfat, you have plenty of room to go hard on the food. First guess is you’re trying to eat too clean. You’re not going to get 4,500 calories from chicken breast, oatmeal, and spinach. There’s zero reason why you’re not crushing a steak burrito (or two) post-workout, grabbing the occasional double-cheeseburger for lunch, or mindlessly munching on M&M-laden trail mix throughout the day.
Second issue is that, if your numbers are correct, you’re sticking to a fairly low-fat diet. That’s the easiest way to add calories to your diet. 2 tablespoons of peanut butter twice a day… boom, there’s a quick 400 calories. Two Pop Tarts with a glass of milk and a scoop of protein… almost 600 calories, fast and tasty.
Also get your workout nutrition in order, since that’s a time when your body can put fast-acting protein and carbs to best use. A simple and inexpensive approach would be Surge Recovery. A 2-scoop serving is 350 calories. Some people have used two servings in a workout, one serving during training, the other immediately after.
Why, when your diet hasn’t been sorted out first? At your size, there was plenty of potential to grow naturally.