My DS (now 13) had a friend like this. If he didn't do something, it was lame. He would diss whatever DS was good at. Sounds soooo familiar. He sort of got sick of the kid, and we just made it more difficult for them to get together. Then after a year or so, he got involved with some other kids, and they decided to play a little 'joke' on DS. Except they really used some bad judgement and got in BIG trouble. His mom called me to apologize and then I laid out the whole thing, and how it had come to that. (She had tried to intervene about something once, but the kid just got mad at DS b/c the kid 'blamed' ds for him getting in trouble with the kid's own actions.) She was shocked. And we haven't had much to do with them since, except superficially.
DS has another friend like that now. They do a sport together, and if DS learns a new skill, this kid has to do it too. Once the other kid was even told by the coach to NOT do something, and he had to try it anyway. The coach called him on it and asked him why he did it, and he gave a lame 'I don't know.' Once time we were having a conversation, and I passed on how a certain coach gave DS a compliment, and this other kid IMMEDIATELY jumped in and had to one-up the compliment. Big time. It was so blatant and vehement that it was almost laughable. I mean, the kid already leads a very privileged life...only child, has pretty much whatever toys/gaming systems/clothes he wants. It's really annoying how he has to still always be the best/do the best/have the best. Why can't he let other kids have their glory moments/skills/accomplishments too?
I've mentioned the one-upping to DS before, and he'd already noticed it. Now, DS will tell me something that OK said, like:
"OK said he's going to go to the moon."
I'll respond, "Of course he is."
"OK is going to a camp to play soccer with the Olympic team."
"Of course he is."
"OK has a new air hockey table in his basement."
"Of course he does."
The first time I said that, he asked me what I meant, and I explained that it was just one other thing that he had to brag about; how he always had to do something better or have 'more' than other people. Now, it's kind of a game with us and if DS tell me some new outrageous boast about OK, I'll just use the "Of course he is/does" line and DS will grin at me. He gets it now.
For your Kayla, OP, I wonder what would happen if, the next time you had her over, you call her on it by using the tactic that maybe she should go home because it doesn't seem like she's very happy visiting you. Like:
"I have better toys at my house."
"My house is a lot bigger than yours."
You: "Oh, Kayla, I think maybe you should go home now. It doesn't seem like you're very happy here right now."
"I'm fine. I'll stay."
"No, I think we'll end this visit now. You keep talking about how you don't like our home very much, so I don't want to make you stay here any longer. Let's get your things." And don't back down. Let her know that actions (words) have consequences.
For the rest of it, I'm torn over whether you mention it or not. Actually, though, I think this may be one of those times where you should have an idea of what you want to say, and then just wait for the opportunity to present itself. Something may happen where it will just open up the conversation, and then you can be ready. In the meantime, cultivate friendships with the other kids. If your DD asks about Kayla, then I don't think 8 is too young to tell her that there are certain etiquette standards; if someone can't play nice, then she doesn't get invited back. If she criticizes your home/posessions or bullies/bosses you around, then she dosn't get invited back. Prepare your DD that she doesn't have to take this, and it's not acceptable behavior to act like that. And I'm sure the last thing you want is for your DD to start emulating Kayla b/c she thinks it's OK!