We did the same thing (at my request) soon after I started at my current job. Before I started here there was no maintenance "staff" and outside vendors were allowed to design a system to do a specified job for a specified cost. The vendors were in affect required to use components that would bring them into budget whether or not the components had been used in any other project at the same plant. This left us with many different PLCs, different contactors, different VFDs, etc, being used in our plant.
Now that we have a Technical Staff, we have taken the responsibility for ALL parts of the plant--parts, processes, etc, and have an "Industrial Specifications" worksheet that all outside vendors must agree to adhere to in order to be allowed to bid on any new project. We in the Technical Dept. adhere to it as well. The specification includes EVERY component conceivable, from the enclosure to the motors. Electrically we specify the contactors, o-loads, VFDs, relays, PLCs, visual and audible indicators, local motor disconnects, motors, breaker panels, breakers, and more. Mechanically we specify the bearings, air valves, air cylinders, etc. Systematically we review any vendor-created programs and processes. In this way, we can provide complete control over the project, both before it is implemented and after.
This is not difficult for the vendor to abide by because we don't force them to us any components that are difficult to obtain--after all we need to access these parts as well. We have changed a lot of previously non-conforming parts out so they now conform to the "List". Having this system in place has increased our uptime from the low 90% when I started to 99+% inside two years.