public void installTags(String tagName) throws IOException, LSHException {
		DatabaseInformation info = establishQueryServerConnection(false);
		InstallTagRequest req = new InstallTagRequest();
		req.tag_name = dequoteString(tagName);
		ResponseInfo resp = req.execute(querydb);
		if (resp == null) {
			BSimError lastError = querydb.getLastError();
			throw new LSHException(lastError.message);
		}
		info = resp.info;

		StringBuilder buf = new StringBuilder();
		buf.append("BSim Database ");
		buf.append(info.databasename);
		buf.append(" now contains:\n");
		formatFunctionTags(info.functionTags, buf);

		// TODO: Should this output differ for command-line vs workbench? debug only?
		Msg.info(this, buf.toString());
	}
Performs the work of inserting a new function tag name into the database. This 
will build the query object, establish the database connection, and perform the query.

@param tagName the tag name to insert
@throws IOException if there's an error establishing the database connection
@throws LSHException if there's an error issuing the query
Ghidra/Features/BSim/src/main/java/ghidra/features/bsim/query/ingest/BulkSignatures.java