Add protocol domain model and repository