According to the Mexican Foreign Ministry, "U.S. citizens traveling to Mexico as tourists must present a valid passport or passport card to the immigration authority at the point of entry to Mexico." A passport is internationally recognized and may be used while traveling by air, land and sea.
Travelers may opt for a passport card instead of an actual passport if cruising to Mexico. At about half the cost of a passport, it will suffice for entry into Mexico only by sea or ground. Keep in mind that a passport card may not be used for air travel.
Be aware that if there is an emergency while on your cruise and you are required to fly home, a passport card will not allow you to board an international flight. Also, if you choose to stay in Mexico for more than 72 hours, you will need a tourist card.