A peer-to-peer (P2P) system is a popular means of file distribution. Existing P2P systems do not adequately address a variety of common problems including (1) limited search scope, (2) dynamic nature of peers and (3) lack of collaboration among peers. In this paper, we propose a server-mediated peer-to-peer system to address these problems and to improve the performance of existing decentralized P2P systems by incorporating a central server into the decentralized P2P system to facilitate collaboration among peers. Two main features of our proposed system are Assisted-search and Assisted-download. Experimental results show that the search coverage was increased by 289.91% by using Assisted-search, while the overall download speed was improved by 33% by using Assisted-download.