Casi lo tienes. Sigues terminando con una expresión regular dentro de una cadena y buscando la cadena '/^94404/' va a encontrar algo a menos que tenga algunos códigos postales extraños.
La forma más fácil de crear un objeto regex a partir de una cadena en JavaScript es usar new RegExp(...) :
var query = { Zip: new RegExp('^' + zipCode) };
Entonces puedes:
collection.find(query).toArray(...)
Ese tipo de cosas funciona en el shell de MongoDB y cosas similares funcionan en la interfaz de Ruby, por lo que también debería funcionar en la interfaz de JavaScript.