In this paper we present Mastro, a Java tool for ontologybased data access (OBDA) developed at Sapienza Università di Roma. Mastro manages OBDA systems in which the ontology is specified in a logic of the DL-Lite family of Description Logics specifically tailored to ontology-based data access, and is connected to external data management systems through semantic mappings that associate SQL queries over the external data to the elements of the ontology. Advanced forms of integrity constraints, which turned out to be very useful in practical applications, are also enabled over the ontologies. Optimized algorithms for answering expressive queries are provided, as well as features for intensional reasoning and consistency checking. Mastro has been successfully used in several projects carried out in collaboration with important organizations, on which we briefly comment in this paper.