So we are free to acquire MIB definitions for agreed upon internet standard modules, as well as whatever manufacturer specific modules as needed to interrogate MIBs from any device we need. What we need depends completely upon what devices we wish to interrogate. A given device may contain anything from one MIB object to thousands of MIB objects. The MIBs within a single device may contain objects defined in various modules ... meaning a device may contain objects located on different branches of the MIB hierarchy.
As example, take a broadband radio from Ubiquiti. It contains standard objects from the MIB-2 module defined by the Internet Engineering Task Force. It contains wifi objects in the ieee802dot11 module defined by IEEE. It contains objects defined in an enterprise MIB defined by Mikrotik. It contains other objects defined in another enterprise MIB defined by Frogfoot Networks. Finally, while IETF provides MIB definition documents for their standard MIBs they exist in multiple versions as they are constantly revised. Ubiquity provides MIB definitions for the exact version and subset of IETF standard modules that their products support.
The source for MIBs for any given device is typically the manufacturer's support web pages. There you should find either MIB definition files for everything their products support, or links to standard or 3rd party supported MIB definitions.
You might want to load all the MIB modules supported by a device if you want to read everything from the device, such as SNMP Walking all the readable MIBs. But if you just want to interrogate a specific set of objects from a device, you don't have to load anything more than the MIB definitions for what you're interested in. It's up to you.