go get


MongoDB Tools

  • bsondump - display BSON files in a human-readable format
  • mongoimport - Convert data from JSON, TSV or CSV and insert them into a collection
  • mongoexport - Write an existing collection to CSV or JSON format
  • mongodump/mongorestore - Dump MongoDB backups to disk in .BSON format, or restore them to a live database
  • mongostat - Monitor live MongoDB servers, replica sets, or sharded clusters
  • mongofiles - Read, write, delete, or update files in GridFS
  • mongotop - Monitor read/write activity on a mongo server

Report any bugs, improvements, or new feature requests at

Building Tools

We currently build the tools with Go version 1.15, other Go versions may work but they are untested. go get will not work; you need to clone the repository to build it. Be sure to clone the repository into your Go workspace inside your $GOPATH.

You can find additional information on GOPATHs here:

mkdir -p $GOPATH/src/
cd $GOPATH/src/
git clone
cd mongo-tools

To use build/test scripts in the repo, you MUST set GOROOT to your Go root directory.

export GOROOT=/usr/local/go

Quick build

The script builds all the tools, placing them in the bin directory. Pass any build tags (like ssl or sasl) as additional command line arguments.

./ ssl
./ ssl sasl

Manual build

Source and run the set_goenv function to setup your GOPATH and architecture-specific configuration flags:

. ./

Pass tags to the go build command as needed in order to build the tools with support for SSL and/or SASL. For example:

mkdir bin
go build -o bin/mongoimport mongoimport/main/mongoimport.go
go build -o bin/mongoimport -tags ssl mongoimport/main/mongoimport.go
go build -o bin/mongoimport -tags "ssl sasl" mongoimport/main/mongoimport.go


See our Contributor's Guide.


See the MongoDB packages documentation.

For documentation on older versions of the MongoDB, reference that version of the MongoDB Server Manual:

Adding New Platforms Support

See our Adding New Platform Support Guide.