Driver (client) for MongoDB, a free, scalable, fast, document DBMS

Version on this page:
LTS Haskell 21.23:
Stackage Nightly 2023-12-08:
Latest on Hackage:

See all snapshots mongoDB appears in

Apache-2.0 licensed by Tony Hannan
This version can be pinned in stack with:mongoDB-,3925

This package lets you connect to MongoDB servers and update/query their data. Please see the example in Database.MongoDB and the tutorial from the homepage. For information about MongoDB itself, see


Change Log

All notable changes to this project will be documented in this file. This project adheres to Package Versioning Policy.

[2.1.1] - 2016-08-13


  • Interfaces of update and delete functions. They don’t require MonadBaseControl anymore.

[2.1.0] - 2016-06-21


  • TLS implementation. So far it is an experimental feature.
  • Insert using command syntax with mongo server >= 2.6
  • UpdateMany and UpdateAll commands. They use bulk operations from mongo version 2.6 and above. With versions below 2.6 it sends many updates.
  • DeleteAll and DeleteMany functions use bulk operations with mongo server

    = 2.6. If mongo server version is below 2.6 then it sends many individual deletes.


  • All messages will be strictly evaluated before sending them to mongodb server. No more closed handles because of bad arguments.
  • Update command is reimplemented in terms of UpdateMany.
  • delete and deleteOne functions are now implemented using bulk delete functions.


  • System.IO.Pipeline module


  • allCollections request for mongo versions above 3.0

[2.0.10] - 2015-12-22


  • SCRAM-SHA-1 authentication for mongolab

[2.0.9] - 2015-11-07


  • SCRAM-SHA-1 authentication for mongo 3.0

[2.0.8] - 2015-10-03


  • next function was getting only one batch when the request was unlimited, as a result you were receiving only 101 docs (default mongo batch size)

[2.0.7] - 2015-09-04


  • Slow requests to the database server.

[2.0.6] - 2015-08-02


  • Time To Live index


  • Bug, the driver could not list more 97899 documents.