Would be possible to separate the Mongo-independent interface declarations (IRepository, IEntity) into an own assembly (something like Repository.Core) ?
This would allow to use the MongoRepository in client-server scenarios, where the clients would reference just the interface assembly, without having to be aware of the "real" database implementation (Mongo in this case).