Python API to configure the subject-IDs/service-IDs/registers

This is slightly offtopic, but your example looks concerning because this is not how you configure subject-IDs. Ports are named simply like this_is_your_port and the name is embedded into:

uavcan\.(pub|sub|srv|cln)\.PORT_NAME\.(id|type)

This is documented here:

Based on what I see, your register should be renamed roughly into uavcan.srv.th_get_data_and_metadata.id, and there also needs to be a uavcan.srv.th_get_data_and_metadata.type that contains the name of the data type.

It is also a design mistake to expose the name of the data type in the register name because these are unrelated entities. More on this in the Guide, look for “syntax-semantic separation”.