You can fill a Mikva straight from a faucet, but the Mikva must be configured in a certain way, and rainwater is still required. (This applies to all Mikvaot, not just for Keilim (dishes).)
According to the Sifra on Vayikra 11:36 and Zevachim 25b, if you have two pools, one filled with kosher water (eg, rainwater), and another filled with pasul water (eg. tap water), if they are connected by a pipe such that the waters connect, the pasul water becomes kosher. This is known as השקה. (See illustration 1 below.) It is preferable that the pipe be made from a material that cannot become tameh.
There is a related concept called זריעה, which states that if you have two connected pools (as above), one empty, and one filled with kosher water, you can fill the empty pool by adding pasul water to the kosher pool, causing it to overflow. (See illustration 2.)
Due to various concerns (mostly about dilution), we add several chumrot to the process, and the final result looks like illustration 3.
This type of setup makes cleaning the mikva and refilling the water much easier, as you only have to wait for the rain to fill the kosher pool once, and not every time you clean it.