Seems like it would be pretty common when linking devices to want to access thinks like the device name and owner string. Passing framework.Client structure, or some reduced clone of it, would make that easier. UnLink probably doesn't matter as much, but might as well make them symmetric.
I'm not sure if they should also be accessible in ProcessMessage(), maybe? The downside would be if people abuse the Client calls it will slow things down. We don't want a REST call for every MQTT message. A warning in the comments might be enough though.