The 29-year-old Alajuela player started in all three of Costa Rica's games during this summer's tournament.
Solis will be joining fellow Costa Rican international striker Ronald Gomez, who has played for OFI Crete the last three years.
"I have been informed by Gomez about OFI and the friendly people of Crete," Solis said, according to the OFI announcement.
"I also know that the atmosphere at OFI is ideal for a professional soccer player."
OFI said that Solis would join the team on 4 July for the team's first training session.
Solis has played 85 times Costa Rica, scoring five goals.
He played in England with Derby County from 1996 to 1999 and then joined San Jose Earthquakes for one season in the United States playing 30 matches and scoring four goals.