Add more documentation to the protocol