Membrane proteins perform diverse functions in living organisms such as transporters, receptors and channels. The functions of membrane proteins have been investigated with several computational approaches, such as developing databases, analyzing the structure-function relationship and establishing algorithms to discriminate different type of membrane proteins. However, compilation of bioinformatics resources for the functions of membrane proteins is not well documented compared with their structural aspects. In this comprehensive review, we elaborately focus on three aspects of membrane protein functions: (i) databases for different types of membrane proteins based on their functions including transporters, receptors and ion channels, annotated functional data for genomes, as well as functionally important amino acid residues in membrane proteins obtained from experimental data, (ii) analysis of membrane protein functions based on their structures, motifs, amino acid properties and other features and (iii) algorithms for discriminating different types of membrane proteins and annotating them in genomic sequences. In addition, we provide a list of online resources for the databases and web servers for functional annotation of membrane proteins. 