If you are confident in your app and you've decided against taking a year off, IMHO, the best time to take the MCAT is right before you start your junior year. This way you have:
a) 1 whole summer to study for the MCAT, and only the MCAT.
b) the next whole summer (between senior and junior) to apply to medical school, and focus on applying.
c) The downside is that since most schools only consider the MCAT for three years if you don't get in, in the first two years you apply you have to reapply. You essetially "waste" one of the application years by spacing it out. Then again, you shouldn't be applying to medical school in the first place unless you feel confident in your application (I learned the hard way last year
).
Other people take it at the beginning of the summer between junior and senior year and then apply the same year. The problem with this is that you have school and MCAT studies at the same time, and then you also have to apply directly after the MCAT.
Personally, I'm a fan of taking a year off. I took the MCAT in the September before my Senior year, then taken the next year off working in the clinical field in a job that I love or doing research that I'm passionate about then apply.
Now barring any of those concerns, there really is only one overriding "correct" answer in my opinon:
You take the MCAT only when you are ready to do well on it.