This paper proposes a way to improve the position estimates in an indoor location systems (ILS) based on readings from the power levels (RSSI) of an ad hoc ZigBee network. A mobile object, also equipped with a ZigBee device, can be located, positioned, and tracked by the system. The initial estimate of the mobile node position is extracted from IC devices from Texas Instruments, equipped with a specific hardware module for this function called Location Engine; it computes its position from RSSI readings of the signals coming from a set of reference beacons. Positioning of the blind nodes is enhanced by a post-filtering of the initial estimates by adjusting them into a Metric Description Graph (MDG) of the building, which includes information on distances and connectivity among the various enclosures of the coverage area of the ILS. The system has been experimentally verified in localization tasks of pedestrians in indoor environments.