I can't seem to understand why there is a diode at the Rx pin on this Adafruit Ultimate GPS board. If we are sending data to the GPS, why put a diode that prevents current flow into this pin?
The pull-up resistor to 3.3V and the diode means that even if you feed the circuit with 5V logic (most Arduino boards use 5V logic) the GPS chipset will see a maximum of 3.3v. The MT3339 device may be damaged or operate incorrectly if any of its pins go above its 3.3V supply rail.
If the signal RX_5V goes to a logic low the diode will conduct and pull the MT3339 RX pin to ~0.7V that it will treat as a logic low.
If RX_5V goes to 5V resistor R3 will pull the MT3339 RX up to 3.3V and the diode will be reverse biased.
The purpose of the diode is documented in a line of text near it on the schematic. The diode and resistor protect the RX input.