В общем, сделал скрипт, который генерирует *.mm файл с описанием состава библиотеки, зашивая туда всю упомянутую в моём вопросе информацию. Прикручены фильтрация пути к py файлу по принципу чёрного списка (если элемент из чёрного списка является подстрокой пути к файлу библиотеки, то файл игнорируется), и фильтрация по принципу белого списка для имени пакета библиотеки, от которой зависит рассматриваемая (например в строке from MyLib.Struct import alpha, MyLib.Struct - имя пакета библиотеки). Если мы указали в белом листе подстроку MyLib, то зависимости рассматриваемых библиотек будут находиться только от пакета MyLib. Скрипт ищет зависимости только в форме from ... import.
*.мм файл читается программой для отображения графов freeplane. Она имеет весь желаемый мной функционал: интерактивность, возможность сворачивать и разворачивать элементы. Ссылка на скачивание freeplane:
https://sourceforge.net/projects/freeplane/
Видюшка с демонстрацией использования:
https://youtu.be/_rN0I9MtmbM
Ссылка на сами скрипты:
https://drive.google.com/file/d/16g8sDCtJ--g8gh9rR...
Запуск идёт через скрипт Lib_struct_builder.py .