It should not be that difficult, just instantiate your object as you normally would do. Store your GameObject in some variable, and then change the instantiated object there.
public GameObject myPrefab;
void Start()
{
GameObject myObject = Instantiate(myPrefab) as GameObject;
myObject.tag = "myTag";
}
If we are talking about an alternative constructor that takes a string as an argument for tagging, then I think you are out of luck.