With Greg Simpson’s help, we narrowed this down to the fact that we needed to prefix the tag path and folder name with the specific SQLTag provider when checking to see if the tag exists and also when creating the new tags with addTag:
...
sParentPath = "[MySQLTagProvider]" + sParentPath
#AlarmState tag
sTag = "AlarmState"
sTagPath = sParentPath + "/" + sTag
if not system.tag.exists(sTagPath):
system.tag.addTag(parentPath=sParentPath, name=sTag, tagType="DB", dataType="Boolean")
system.tag.write(sTagPath, 0)
...
Thanks, Greg!