This is possible to set up with some compromise. First, understand that a component, either inserted from your library, or from the 3d warehouse, or dragged in and dropped from your desktop is basically an independent .skp file. That component you are inserting can have any number of sub components nested in it, and can also have any number of tags associated and saved with the file. So your component can have three cubes in it, all of them sub components, and all of them assigned to their own tag, let’s call them tag 1, tag 2, and tag 3. If you import that component the three sub components will appear and the associated tags will be populated in your Tags pallet.
However, the outermost component shell that contains all the sub-components will be untagged. This is because untagged is the default for the entire SketchUp modeling space at the time the file was saved. Importing a saved .skp file as a component basically places a component wrapper around a saved file, using the name of the saved file.
There are ways around this, both with compromises. One is to make a component of your object before saving it, assign that component a tag and then save. When imported this will arrive double wrapped or “nested” in your new file, it will have the component wrapper you made with the associated tag, and it will have an outer wrapper that is untagged created as part of the import process. Right click and explode once to delete the outer container, or leave it double wrapped.
The other way is not recommended and can cause extensive problems with your file. That would be to tag the raw geometry of your object before saving your file. This would result in an imported single wrapped component that obeys tag visibility, the outer component shell will still be untagged. However, tagging raw geometry can lead to serious conflicts in your model as raw geometry can merge even when not visible, there be dragons here, ye be warned.
A third method is it to create your desired tag in the working file (make it a template) and change the active tag to that before inserting your component, it will be inserted single wrapped and assigned that tag, but don’t forget to change it back to untagged before continuing work! This also can be tricky.
This double nesting is not the case with “copy/paste”, because the component is not a saved .skp file. Ao another workflow that could serve you would be to create a file with all the components you regularly use and keep it open in the background, then copy paste things out of that collection file. They will be pasted single wrapped with tags assigned. Depending on the number of components and their size this can work.
I generally use component collections and a version of the first method and either explode the component once, or leave it double wrapped wrapped.