Abdohoo.App Developer tools MongoDesk

For MongoDB 4.4 and newer, including Atlas

A shell, a grid, and the shape of your data.

Browse and edit documents, write mongosh-style scripts with collection-aware completion, manage collections, indexes, views and users, watch live server metrics, take logical backups, and diagram the references between collections — all from one window.

MongoDB4.4+ and Atlas
3desktop platforms
14 daysfull trial
0telemetry sent

No newsletter, no sharing — one email when it ships.

MongoDeskDocument view Coming soon
shop.orders atlas · rs0 41,208 docstrial 14d
{ "_id": ObjectId("66f1c2a49b3e…"), "tenant": "aslam", "status": "shipped", "total": NumberDecimal("1180.00"), "items": [ 3 ], "placed_at": ISODate("2026-09-14T08:12Z") }
_id100%tenant100%total100%coupon12%notes3%
replica set · rs0 field shape from $sample · 1,000 docs

What it does

Real mongosh, and a grid that types itself.

Every item here is in the product today. Panels that cannot read their data say so rather than failing, so a user with narrow roles still gets a working app.

Connections

Atlas, SRV and bastions

  • Standard hosts or mongodb+srv seed lists; SCRAM and X.509; TLS with CA bundles
  • SSH bastion tunnelling with SNI set to the real host, so certificate checks still pass
  • Read preference, read and write concern, journal, pool size, timeouts, retryable reads and writes
  • Automatic reconnection with bounded backoff when a deployment goes away
  • Test connection uses exactly what is in the editor, unsaved secrets included
Schema

What the collection actually holds

  • Databases, collections, timeseries collections and views with counts and storage sizes
  • Indexes with keys, uniqueness, TTL and partial filters; validators
  • Sampled field shape for every collection, taken with $sample so it reflects the data now
  • Create collections with validators, indexes and views; rename or drop with typed confirmation
  • A mongosh script for every object that pastes straight back into the workbench
Workbench

Actual JavaScript, mongosh conventions

  • Monaco with completion for collections, cursor methods and BSON helpers
  • use shop, show collections, top-level await, db.getSiblingDB(), cursor.pretty()
  • for await (const doc of db.x.find()) works the way you would expect
  • Every write — runCommand, adminCommand, $out and $merge included — passes one guard
Data

Documents as columns, or as documents

  • Flattened into columns by dotted path, sorted and typed by what the documents hold
  • A typed filter bar that reads the field's sampled type — a 24-hex string on an ObjectId field means that ObjectId
  • _id keyset paging, stated as offset paging where no _id sort applies
  • Inline $set and $unset cell edits, and a full-document EJSON editor with command preview
Cluster

Live, plus users and roles

  • Tiles and charts from serverStatus: operations, latency, connections, network, WiredTiger cache
  • Replica-set members with state, health, uptime and replication lag
  • Current operations, with kill
  • What this client itself is reading, measured on the client side
  • Users and roles per database or deployment-wide, with built-in roles labelled as the server reports them
Movement

Backups, advisor and the ERD

  • Logical backups: collection options and indexes plus gzipped canonical EJSON, with a manifest
  • Restore with database remapping, empty-before-load, dry run and continue-on-error
  • Import from CSV with field mapping to nested paths, NDJSON, or a JSON array — BSON types survive the round trip
  • Index hygiene: unindexed large collections, prefix-redundant indexes, indexes never used, views over views
  • References inferred from naming conventions, weighted so tenant_id everywhere does not draw a complete graph

Trial and licence

Fourteen days, then reading still works.

MongoDesk runs fully featured for fourteen days from first launch. After that it keeps reading — browsing, queries, metrics, analysis and export — and only writing needs a licence key.

Someone diagnosing a production incident is never locked out of looking at their own data by a lapsed key. That is a deliberate choice, not an oversight.

A key is an Ed25519-signed statement verified locally against a public key compiled into the binary. Nothing contacts a server, which matters because database tooling is routinely run on machines with no route to the internet. Perpetual keys carry a maintenance window, so a key keeps working forever on the versions it covers.

StateReadWrite
Trial — 14 days from first launchyesyes
Licensedyesyes
Trial endedyesno
Licence expiredyesno
Key does not cover this versionyesno

Pricing is not set yet — ask and we will tell you the moment it is.

Local

Credentials never leave the machine

Connection secrets go to the OS keychain — Keychain on macOS, Credential Manager on Windows, Secret Service on Linux — not to a config file in your home directory. Passwords go straight to the server: never logged, never echoed back, and masked in every statement preview.

Quiet

No telemetry, no account, no check-in

There is no analytics call, no crash reporter phoning home and no sign-in. The app works the same on an air-gapped jump box as it does on your laptop, and the licence check is part of why — it is arithmetic, not a request.

Careful

It shows you the statement first

Destructive actions take typed confirmation, and every write shows the exact command before it runs. A connection can be marked read-only, and that switch is enforced in the main process at the same place the licence gate lives — so a caller that respects one cannot slip past the other.

Honest

It hides what your server cannot do

Some panels need privileges — serverStatus and currentOp want clusterMonitor, the advisor wants $indexStats. A panel that cannot read its data says so rather than failing, and users who cannot run listDatabases are shown the databases their roles cover, with the tree saying as much.

Coming soonv0.1.0

Want it when it lands?

Needs a reachable MongoDB 4.4 or newer: standalone, replica set, sharded cluster or Atlas. Standard hosts or mongodb+srv seed lists, SCRAM or X.509, TLS with CA bundles and client certificates.

No newsletter, no sharing — one email when it ships.

Windows · macOS · Linux

The other two

Coming soon

ScyllaDesk

ScyllaDB and Apache Cassandra

Coming soon

RedisDesk

Redis, Valkey, KeyDB and friends