For a creature to be able to make an interaction, it should have CAN_DO_INTERACTION.
Let's look at a cat.
[CAN_DO_INTERACTION:CLEANING] - it means the cats can do the cleaning interaction. It's defined in a separate file:
[INTERACTION:CLEANING]
[I_SOURCE:CREATURE_ACTION]
[I_TARGET:A:CREATURE]
[IT_LOCATION:CONTEXT_CREATURE]
[IT_MANUAL_INPUT:creature]
[I_EFFECT:CLEAN]
[IE_TARGET:A]
[IE_IMMEDIATE]
[IE_GRIME_LEVEL:2]
[IE_SYNDROME_TAG:SYN_INGESTED]
Then you should tell the creature how to use it and under which conditions:
[CDI:USAGE_HINT:CLEAN_SELF]
[CDI:USAGE_HINT:CLEAN_FRIEND]
USAGE_HINT tells AI when to use interaction. If there's none, the creature will use it any time it can. It can be set to ATTACK, FLEEING etc. for various reasons. It can also be set to GREETING to make dwarves do something to other dwarves from time to time (i.e. buff them).
Another thing:
[CDI:BP_REQUIRED:BY_CATEGORY:TONGUE]
You can ignore this, or you can make interaction to require a bodypart. Like hands for casting, for example.
Another one is how it's displayed in a log:
[CDI:VERB:lick:licks:lick each other]
The first one is a first person ("you lick"), the second one is a third person ("cat licks") and the third one is mutual ("cats lick each other") and requires [CDI:CAN_BE_MUTUAL]. usually the third one is not used.
Then, it's target:
[CDI:TARGET:A:SELF_ALLOWED:TOUCHABLE]
In this case the target must be in touchable range and it can be the creature itself. Replace TOUCHABLE with LINE_OF_SIGHT, and it will be a ranged interaction.
[CDI:TARGET_RANGE:A:1] defines range (1 tile max in this case).
[CDI:MAX_TARGET_NUMBER:A:1] defines amount of targets possible at once. Set it to 3, and the cat can lick 3 cats (or rather usually 2 other cats and itself) at once if they are in range.
[CDI:WAIT_PERIOD:10] defines how fast in game ticks it can be reused.
I suggest to look at existing interactions in MASTERWORK mod or my mods to see what can be done with effects. It's mostly about applying syndromes, so you need to have two browser tabs open:
http://dwarffortresswiki.org/index.php/DF2012:Interaction_token - for the list of interaction tokens.
http://dwarffortresswiki.org/index.php/DF2012:Syndrome - for the list of syndrome tokens.