I found the issue.
I was using the -datadir at the end of the command where it is expecting after the chainname and before the grant param.
as in
multichain-cli chainname -datadir=b: grant ipaddress connect -> works
multichain-cli chainname grant ipaddress connect -datadir=b: -> does not work