Efficient algorithms to discover frequent patterns are crucial in data mining research. Several effective data structures, such as two-dimensional arrays, graphs, trees, and tries have been proposed to collect candidate and frequent itemsets. It seems as the tree structure is most extractive to storing itemsets. The outstanding tree has been proposed so far is called FP-tree which is a prefix-tree structure. In this paper, MFP-tree data structure is introduced. It is a modification of FP-tree. A CP-mine algorithm is also proposed in order to mine frequent itemsets from the MFP-tree by using pruning tree and a marked value technique. We have conducted several experiments based on both synthetic and real world datasets with different parameters. The experiments are illustrated the comparison between CP-mine and FP-growth algorithms. Keywords--CP-mine, FP-tree, Frequent Itemsets, MFPtree.