You shouldn’t need anything besides the list of zip files. If you really need to do something as overkill as verifying their content then you can look at the arcade dat file. To take an example :
<game name="buckrogn" cloneof="buckrog" romof="buckrog" sampleof="buckrog" sourcefile="sega/d_turbo.cpp">
<description>Buck Rogers: Planet of Zoom (not encrypted, set 1)</description>
<year>1982</year>
<manufacturer>Sega</manufacturer>
<rom name="cpu-ic3.bin" size="16384" crc="7f1910af"/>
<rom name="cpu-ic4.bin" size="16384" crc="5ecd393b"/>
<rom name="epr-5200.cpu-ic66" merge="epr-5200.cpu-ic66" size="4096" crc="0d58b154"/>
<rom name="epr-5216.prom-ic100" merge="epr-5216.prom-ic100" size="8192" crc="8155bd73"/>
<rom name="epr-5213.prom-ic84" merge="epr-5213.prom-ic84" size="8192" crc="fd78dda4"/>
<rom name="epr-5262.prom-ic68" merge="epr-5262.prom-ic68" size="16384" crc="2a194270"/>
<rom name="epr-5260.prom-ic52" merge="epr-5260.prom-ic52" size="16384" crc="b31a120f"/>
<rom name="epr-5259.prom-ic43" merge="epr-5259.prom-ic43" size="16384" crc="d3584926"/>
<rom name="epr-5261.prom-ic59" merge="epr-5261.prom-ic59" size="16384" crc="d83c7fcf"/>
<rom name="epr-5208.prom-ic58" merge="epr-5208.prom-ic58" size="8192" crc="d181fed2"/>
<rom name="epr-5263.prom-ic75" merge="epr-5263.prom-ic75" size="16384" crc="1bd6e453"/>
<rom name="epr-5237.prom-ic74" merge="epr-5237.prom-ic74" size="8192" crc="c34e9b82"/>
<rom name="epr-5264.prom-ic91" merge="epr-5264.prom-ic91" size="16384" crc="221f4ced"/>
<rom name="epr-5238.prom-ic90" merge="epr-5238.prom-ic90" size="8192" crc="7aff0886"/>
<rom name="epr-5201.cpu-ic102" merge="epr-5201.cpu-ic102" size="2048" crc="7f21b0a4"/>
<rom name="epr-5202.cpu-ic103" merge="epr-5202.cpu-ic103" size="2048" crc="43f3e5a7"/>
<rom name="epr-5203.cpu-ic91" merge="epr-5203.cpu-ic91" size="8192" crc="631f5b65"/>
<rom name="pr-5194.cpu-ic39" merge="pr-5194.cpu-ic39" size="32" crc="bc88cced"/>
<rom name="pr-5195.cpu-ic53" merge="pr-5195.cpu-ic53" size="32" crc="181c6d23"/>
<rom name="pr-5196.cpu-ic10" merge="pr-5196.cpu-ic10" size="512" crc="04204bcf"/>
<rom name="pr-5197.cpu-ic78" merge="pr-5197.cpu-ic78" size="512" crc="a42674af"/>
<rom name="pr-5198.cpu-ic93" merge="pr-5198.cpu-ic93" size="512" crc="32e74bc8"/>
<rom name="pr-5199.cpu-ic95" size="1024" crc="45e997a8"/>
<sample name="alarm0" />
<sample name="alarm1" />
<sample name="alarm2" />
<sample name="alarm3" />
<sample name="exp" />
<sample name="fire" />
<sample name="rebound" />
<sample name="hit" />
<sample name="shipsnd1" />
<sample name="shipsnd2" />
<sample name="shipsnd3" />
<video type="raster" orientation="horizontal" width="512" height="224" aspectx="4" aspecty="3"/>
<driver status="good"/>
</game>
sampleof="buckrog"
tells you that this romset will look for a sample file named buckrog.zip, <sample name="alarm0" />
tells you that the sample file must contain a file named alarm0.wav, etc…
Clrmamepro is perfectly able to use that data to verify you have those samples. You just need, while using the standard dat file to verify your romsets, to set the samples path in settings and check samples when verifying.
Also, you should use FBNeo samples instead of MAME samples, the information that we are using the same samples as MAME is kind of wrong/outdated: we have samples that never existed for MAME, like the donpachi optional samples which is an OST to replace the OG background music.