Skip to content

terebentina/mongo-buddy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

299 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

MongoBuddy

MongoBuddy

A fast, friendly, lightweight MongoDB GUI client for macOS, Windows, and Linux.

License: MIT Latest release Downloads Electron Platforms

MongoBuddy main window

MongoBuddy is an open-source desktop MongoDB client built for developers who want a snappy, keyboard-first alternative to heavier GUIs. Connect to any MongoDB instance, run queries and aggregations, edit documents inline, and keep your query history β€” all in a clean native app.


✨ Features

  • πŸ”Œ Multi-connection manager β€” save and switch between MongoDB connections, credentials stored locally via electron-store
  • ⌨️ Powerful query editor β€” CodeMirror 6 with JavaScript/JSON syntax highlighting, autocomplete, bracket matching, undo/redo, Ctrl+F search and Ctrl+H replace
  • πŸ“Š Results table β€” row numbers, inline document editor, EJSON-aware filters for find / count / aggregate / distinct
  • πŸ•‘ Query history β€” per-connection history so you can rerun anything you’ve touched before
  • πŸ“₯ Import dialog β€” drop in JSON / EJSON documents
  • 🎯 Keyboard-first UX β€” thoughtful focus management (Base UI Dialogs) and shortcuts throughout
  • πŸŒ™ Dark by default β€” CodeMirror one-dark theme, easy on the eyes
  • πŸ–₯ Cross-platform native builds β€” Windows, macOS (Apple Silicon), and Linux
  • πŸ€– Built-in MCP server β€” point Claude, Cursor, or any MCP client at your live MongoDB connection (read-only tools)

πŸ“Έ Screenshots

Connection dialog Query editor
Connection dialog Query editor
Document editor Query history
Document editor Query history

πŸ“₯ Download & Install

Grab the latest build from Releases β†’.

OS File Notes
πŸͺŸ Windows MongoBuddy-Setup-X.Y.Z.exe NSIS installer, x64
🍎 macOS MongoBuddy-X.Y.Z-arm64.dmg ⚠️ Apple Silicon only β€” Intel Macs not yet supported (see Roadmap)
🐧 Linux MongoBuddy-X.Y.Z.AppImage or mongo-buddy_X.Y.Z_amd64.deb AppImage (portable) or Debian package

The app is not yet code-signed, so your OS may show a β€œpublisher unknown” warning the first time you open it. That’s on the roadmap.


πŸš€ Quick Start

  1. Download the build for your OS from Releases
  2. Open MongoBuddy
  3. Add a connection β€” paste any MongoDB URI (mongodb://… or mongodb+srv://…) and hit connect

That’s it. Pick a database, pick a collection, and start querying.


πŸ€– MCP Server

MongoBuddy ships with a built-in Model Context Protocol server so you can let Claude, Cursor, or any MCP-aware tool inspect the MongoDB connection you already have open in the app.

The server starts automatically on launch and exposes a Streamable HTTP endpoint:

http://localhost:27099/mcp

The MCP server uses the active connection in the app β€” open a connection in MongoBuddy and your MCP client will see the same databases and collections. Close the app and the server goes with it.

Tools

All tools are read-only. Writes still go through the GUI.

Tool Purpose
list_databases List databases on the connected server
list_collections List collections in a database
sample_fields Sample a collection and return its top-level field names
find Query documents (supports filter, sort, skip, limit, EJSON)
count Count documents matching a filter
aggregate Run an aggregation pipeline
distinct Distinct values of a field
list_indexes List indexes on a collection

CLI flags

Flag Default What it does
--mcp-port=N 27099 Bind the MCP server to port N (1–65535)
--disable-mcp off Don’t start the MCP server

Wiring up a client

For Claude Code, register the server with the claude CLI:

claude mcp add --transport http mongo-buddy http://localhost:27099/mcp

For other MCP clients that support Streamable HTTP, point them at the same URL. If you change the port with --mcp-port=N, update the URL to match.


πŸ›  Development

Want to hack on MongoBuddy? Everything runs locally.

Prerequisites

Setup

git clone https://github.com/terebentina/mongo-buddy.git
cd mongo-buddy
pnpm install
pnpm dev

Scripts

Command What it does
pnpm dev Run the app in development with hot reload
pnpm build Build the app bundles
pnpm test Run main + renderer Vitest suites
pnpm lint ESLint over src/
pnpm typecheck TypeScript check (node + web)
pnpm format Prettier write
pnpm release Bump version, tag, push β€” triggers GitHub Actions to build Win/Mac/Linux artifacts and attach them to the release

Project layout

src/
β”œβ”€β”€ main/        # Electron main process β€” Mongo service, IPC handlers, stores
β”œβ”€β”€ preload/     # Preload bridge
β”œβ”€β”€ renderer/    # React 19 + Tailwind UI
└── shared/      # Shared TypeScript types

Commit convention

We use Conventional Commits β€” commit-and-tag-version reads them to generate the CHANGELOG and pick the next version.

feat(editor): add bracket matching
fix(connection): handle SRV records with no TXT

πŸ§ͺ Tech Stack

Electron 41 Β· React 19 Β· TypeScript Β· Vite Β· Tailwind v4 Β· Base UI Β· CodeMirror 6 Β· MongoDB Node driver 7 Β· Zustand Β· Vitest


πŸ—Ί Roadmap

Ideas on deck β€” contributions very welcome:

  • macOS Intel (x64) build
  • Auto-update via electron-updater
  • SSH tunnel support
  • Schema visualization
  • Export results (CSV / JSON / BSON)
  • Code-signed Windows + macOS builds

Open an issue if you want to tackle one β€” or suggest your own.


🀝 Contributing

PRs are welcome! A few ground rules:

  • For anything non-trivial, open an issue first so we can align
  • Follow Conventional Commits
  • Before opening a PR, run pnpm lint && pnpm test

A proper CONTRIBUTING.md is on the way.


πŸ“œ License

MIT Β© 2026 Dan Caragea


πŸ™ Credits

Built on the shoulders of giants: Electron, MongoDB, CodeMirror, Base UI, Tailwind CSS, and many more.

Packages

 
 
 

Contributors

Languages