Why is it necessary to eat a vegetable that requires HaAdamah for Karpas? Why not an onion, parsley, or other herb that might require SheHaKol (for not being normally eaten that way), or a fruit that requires Ha'Etz?
Chazal do not give a definitive answer to this question. Rishonim do start to discuss it (see above comments, which cite Tos. Pesachim 114b, 115a, credit to Fred and DoubleAA), and I present the opinions of two recent Rabbis that provide summaries of why we do use Haadamah vegetables.
According to Rav Eliezer Melamed here (see fn 15, h/t to Gershon) the Beracha must be Haadama according to those who hold that the Hamotzi will not exempt the Maror from requiring a Haadamah to be made on it. Therefore, we make Haadamah on the Karpas to exempt the Maror. According to those who say it is exempt because of the Hamotzi, there is no need to have a Haadamah vegetable for Karpas.
Rav Moshe Taragin here suggests something slightly different, that the purpose of the Haadama is because we are unsure if one can make Haadama on the Maror, due to the Halacha that the Hamotzi may cover it. Therefore, in order to avoid missing the Haadamah, we make it on the Karpas specifically.
Rav Taragin also notes that there are those that view Karpas as an extension of Maror, and according to those opinions, specifically vegetables must be used. See the full article for details.