Here's what worked for me: Valium.
I just took the MCAT on December 6th at 1 PM. On Dec 5th, I did not study at all. I relaxed as much as possible, I ate well. However, I was still having a very very hard time getting to sleep the night before the test. I eventually took 4 mg of Valium, and I fell asleep about 30 or 40 minutes later.
I woke up about 4 hours later, anxious about the upcoming test.
So my conclusion: 4 mg of Valium effectively got me to sleep, but it wore off completely within 5 hours. I was feeling extremely alert by test time.
I also highly recommend: Routine. Set your sleep routine in the days before the MCAT, do not deviate.
If you are anxiety-prone, I highly recommend getting some Valium before your MCAT. Also, you should take it three or four times to see how it affects you, and to find the right dose. Don't take Valium for the first time ever the night before the MCAT.
You should also bring Valium to the testing center with you. I did.
I recommend Valium over Ambien because Valium is more effective against anxiety. They both are effective sleep aids.
Valium kicks in faster than many other benzodiazepine sedatives, such as Ativan and Klonopin. This is because Valium is more lipophilic. This is not personal experience, I actually read papers about pharmacokinetics before choosing which benzo to ask my doctor for. When administered orally, Valium gets into the blood faster and it causes sedation sooner.