Staad by default adds some materials to the model (please refer to the snapshot attached). Majority of these will not be used during automation (as the materials will be created separately based on the need) and hence the materials section remains cluttered with default definitions. I believe there is no function which currently facilitates to remove the unassigned materials. I agree that these don't appear in the editor unless they are assigned to elements and their existence do not harm the functionality or analysis. However, it will be helpful if a function to remove the unassigned materials is exposed.
Thank you for posting this idea. Please note that perhaps for now you might want to consider making a change to the ini file that STAAD.Pro loads when a model is loaded. that is StaadPro****.ini in the C:\Users\(user name)\AppData\Local\Bentley\Engineering\STAAD.Pro 2023\Default
This contains all the default materials in both English and metric versions. if you edit this file with just the materials you want STAAD.Pro to use, then this would be less of an issue for you. However, I would say that having a function to remove materials from the GUI should be provided and will be added to the backlog.