My bf calls me names when he gets mad? What should I do?

Everytime my bf gets upset or mad he comes in with a attitude and he lashes out. I could leave a cup upstairs and he’ll go off and say I’m lazy and start calling me names. He’ll get upset if the kids cry and says I don’t know what I’m doing. He’ll also say I’m home all day doing nothing, we have 5 kids 12,9,5,2, 3 month old I’m always on my feet and when I finally get me time he says I’m lazy n all other things. When he wants to start N argument he threatens to take my kids from me and says he can do that because works and I don’t. If i miss a call from him because I’m doing something in the home or in a shower he starts going off and calling me every name he wants. Today I admitted why I get how I get at times due to not having both parents and he goes off on me saying ima make him lose his job and it’s pointless to say anything. And then calls me and goes off on me. Idk why he gets mad at me or does this.I start to feel bad about myself and literally after me pouring my heart out to him today I cried. I just needed to vent sorry guys, is this emotional abuse what should I do?