Hi, 
It may be worth starting out by looking at MXFDump. That will allow you to get a feel for the structure of the files.
If you are happy to program in C++, you should be able to write a simple program using MXFLib that does the following:
Code:
// Open the file as read-only
MXFFilePtr File = new MXFFile();
File->Open(Filename, true);
// Locate the master partition and read in the metadata
PartitionPtr Master = File->ReadMasterPartition();
Master->ReadMetadata();
// Parse the metadata into higher-level classes
MetadataPtr Meta = Master->ParseMetadata();
// Iterate through the packages
PackageList::iterator it = Meta->Packages.begin();
while(it != Meta->Packages.end())
{
    // Iterate through the tracks
    TrackList::iterator it2 = (*it)->Tracks.begin();
    while(it2 != (*it)->Tracks.end())
    {
        if((*it2)->IsTimecodeTrack())
        {
            if((*it)->IsA(MaterialPackage_UL))
            {
                // Do Material Timecode Tests Here
            }
            else
            {
                // Do Source Package Timecode Tests Here
            }
        }
        it2++;
    }
    it++;
}