I find I usually end up wrapping most of my Models in a ViewModel if they're going to be used extensively in the View, as it gives me the most flexibility.
If a Model is only used as the component of another Model, and doesn't itself have any particularly interesting display properties/logic, I'm usually happy to expose its properties via other ViewModels. It's usually a judgment call based on what you'll be doing with your models.
In your case it sounds like you may be interrogating/displaying a Person quite frequently, so you may have something like the following:

If that's the case, I'd be inclined, as galenus suggested, to wrap each Person in a ViewModel and hold a list of ObservableCollection<PersonViewModel> on whatever ViewModel you're composing.
That way, if you need any View specific fields for displaying a Person (or additional logic), you're free to stick them on the PersonViewModel, without polluting the Person Model.
If however, all you're doing is displaying a list of Persons in a small place in your application, I probably wouldn't bother wrapping them.
I find MVVM is often a balancing act, eventually you get a feel for what is likely to require a ViewModel. Personally, I probably favour a ViewModel wrapper more than I need to, because I've often found that later in development, I require the additional flexibility.