Skip to content
Monghoul

What's new

Every Monghoul release, newest first. Found a bug or want a feature? The buttons below open a prefilled GitHub issue.

v1.5.11 View on GitHub

Monghoul 1.5.11

Result Viewer

  • Safer auto-run on open — connection-level "Auto-run on open" no longer fires for tabs generated from result-viewer actions (delete, edit document, edit field, insert, filter by value, unset field, clone). Previously these helper tabs could execute destructive code the moment they opened; now only tabs you explicitly open (tree double-click, command palette, favorites, pinned, snippets, "Open in tab" from logs) honor the setting.
v1.5.10 View on GitHub

Monghoul 1.5.10

Result Viewer

  • Faster document deletion — right-click "Delete Document" and the multi-select "Delete" button now open a confirmation dialog showing the affected _ids instead of spawning a new tab with deleteOne / deleteMany code. Confirm to run the delete immediately; the rows are removed from the table on success.
  • Edit as query escape hatch — the same confirmation modal has an "Edit as query" button that opens the generated delete code in a new tab, so power users who want to widen the filter or copy the syntax keep the old workflow one click away.
v1.5.9 View on GitHub

Monghoul 1.5.9

Result Viewer

  • Preview drawer — a persistent side panel that shows the focused document as formatted JSON. Toggle with Ctrl/Cmd+I. The drawer follows the focused row in Tree and Table views, so arrowing through rows updates the content live without leaving the table. Drawer open state and width are persisted per tab.
  • Edit Document hotkey — press Ctrl/Cmd+E with a row focused in Tree or Table view to open an Update Document tab pre-filled with that document, no right-click required.
  • Hotkeys modal — added a Result Viewer section listing the search, copy, select-all, edit, and preview shortcuts so they're discoverable without hunting through docs.
v1.5.8 View on GitHub

Monghoul 1.5.8

Sidebar

  • Collections sorted alphabetically — collections inside each database in the sidebar tree are now ordered alphabetically by name (case-insensitive) instead of in MongoDB's native return order, making it easier to scan and find what you're looking for. Search-narrowed and filter-narrowed lists inherit the same order; pinned collections keep their user-controlled drag-and-drop order.
v1.5.7 View on GitHub

Monghoul 1.5.7

MCP

  • Lazy tool exposure — the MCP server now advertises only ~10 essential tools on connect instead of all 70+, cutting the AI assistant's upfront context cost by roughly 70%. The rest are grouped into categories (charts, themes, sidebar, panels, windows, schema, etc.) and stay hidden until they're needed.
  • Three meta-tools always availablediscover_tools returns the catalog of hidden tools grouped by category with one-line summaries (no schemas, cheap to call), enable_tools loads tools by category or by name and returns category-specific workflow tips, and disable_tools hides them again to free context. enable_tools({ categories: ['*'] }) loads everything in one call for power users.
  • Slimmer server instructions — the MCP welcome blurb dropped chart and workspace cheat-sheets in favor of pointers to the new meta-tools, saving another ~300 tokens. Chart patterns, panel tips, and other category guidance are now returned only when the relevant category is enabled.

Tabs

  • No more forever-loading tabs after a crash — if Monghoul was killed or restarted while a query was still running, the affected tab's loading spinner used to be sticky on the next launch; switching to that tab would just spin. The sidecar now sweeps those orphaned execution flags on startup so the tab opens normally and you can re-run the query.
v1.5.6 View on GitHub

Monghoul 1.5.6

MCP

  • Tabs no longer get stuck loading — queries run by an AI assistant through the MCP server now reliably clear their loading state in the app, even when the SSE connection drops between the start and end of a query. Previously a tab could spin forever and only recover after an app restart.
  • Auto-run-on-open ignores MCP tabs — connections with "Auto-run on open" enabled no longer execute the query when an MCP-created tab becomes active; auto-run is strictly limited to tabs you opened yourself.

Editor

  • No more cross-tab "duplicate variable" warnings — declaring a const (e.g. const since = ...) in multiple open query tabs no longer triggers a TS2451 "Cannot redeclare block-scoped variable" or TS2300 "Duplicate identifier" squiggle. Each tab runs in its own sandbox at runtime, and the editor now matches that.

Tabs

  • Easier to click a tab without dragging it — the tab drag threshold has been raised so a normal click reliably activates the tab. Previously a few pixels of pointer movement during a click would start a drag and swallow the activation; you now have to move further before a drag kicks in.
v1.5.5 View on GitHub

Monghoul 1.5.5

Result Viewer

  • New tabs land next to their source — Tree and Table view actions that spawn a new tab (Edit Document, Edit Field, Delete Document, Insert Document, Filter by Value, Unset Field, Unset Field (All Documents), Clone Document, and bulk Delete N Documents) now insert the generated query immediately after the current tab instead of jumping to the end of the panel, so the new query stays adjacent to the result it came from.
  • Export all matching documents — the result-header Export dropdown now offers two scopes side by side: Loaded results (the documents already fetched, same as before) and All matching documents, which re-runs the tab's query server-side and streams every result to disk while ignoring .limit() / .skip() and outer $limit / $skip pipeline stages. A progress modal shows the running count and lets you cancel — cancellation removes the partial file. If the code looks like it could mutate data (update*, delete*, $merge, $out, …) the app confirms before re-running so side effects don't repeat silently.
v1.5.4 View on GitHub

Monghoul 1.5.4

Result Viewer

  • Date display format setting — choose how dates render in Tree and Table views from the footer's app info popover: ISO 8601, Local, Relative, or Unix milliseconds. Switching the format updates every visible cell instantly.
v1.5.3 View on GitHub

Monghoul 1.5.3

Editor

  • Autocomplete for stage body keys — typing inside $lookup: { … } now suggests from, localField, foreignField, as, let, pipeline; same for $graphLookup, $merge, $unwind, $bucket, $geoNear, and the other typed stages. Sub-pipelines ($lookup.pipeline, $facet branches, $unionWith.pipeline, $merge.whenMatched) get the same completions recursively.

Tabs

  • Clone tab lands next to its source — duplicating a tab (right-click → Clone Tab, or Cmd/Ctrl+D) now inserts the copy immediately after the original instead of jumping to the end of the panel, and preserves the source tab's view, pinned columns, table config, and chart config.
  • Ctrl/Cmd+W keeps closing tabs when spammed — rapid presses no longer get stuck on a stale active tab id during the close storm, so mass-closing doesn't stall before the panel is empty.
v1.5.2 View on GitHub

Monghoul 1.5.2

Editor

  • Cursor lands inside find({}) — opening a fresh query tab now drops the cursor between the filter braces and focuses the editor, so you can start typing the query right away.
  • Quieter autocomplete after { — typing { no longer auto-opens the suggestion menu; completions now wait for whitespace (or an explicit Ctrl+Space) after the brace, reducing noise when starting a new object literal.

Query

  • Auto-run on open — new per-connection option in the connection modal that automatically executes a query tab's code the first time the tab is opened; only fires for newly created tabs, not tabs restored on app restart.
  • Refresh collection hotkey — Cmd/Ctrl+Shift+R refreshes the active tab's collection stats and indexes in one go, with a loading spinner on the affected tree nodes while the sync runs.
v1.5.1 View on GitHub

Monghoul 1.5.1

Query

  • Smarter export filenames — the result-viewer export action now defaults to {tab-title}-{YYYYMMDD-HHmmss}.{ext} instead of a static query-results.{ext}, so repeated exports don't overwrite each other and files are self-identifying.
v1.5.0 View on GitHub

Monghoul 1.5.0

Explain View

  • Compare candidates — a new button in the Rejected Plans section re-runs the explain with allPlansExecution verbosity and surfaces per-plan stats (Returned / Docs / Keys / time) under each rejected plan.
  • Recursive sub-pipeline rendering$facet, $unionWith, and $lookup stages now render their inner pipelines inline as collapsible sub-blocks instead of a single opaque node, recursing all the way down.
  • Smarter index suggestions$lookup suggestions now check the target collection's actual indexes and hide when already covered; trailing $sort: { _id: 1 } after transforming stages no longer produces bogus index recommendations; the default _id_ index is always treated as present.
  • Cross-collection suggestion labels$lookup index suggestions targeting another collection are prefixed with ↪ collection · so the destination is impossible to miss.
  • Copy button on suggestions — every suggested createIndex(...) command now has a one-click Copy button.
  • Grade badge tooltip — the COLLSCAN / Indexed / Optimal / OK pill now has a tooltip explaining the threshold that produced it.
  • Numbered stages — pipeline stages are prefixed with #1, #2, … for easy reference.
  • Full rejected-plan tree — rejected plans now render the complete stage path, including OR / AND_SORTED / AND_HASH splits.
  • Semantic stage colors — red for costly work (COLLSCAN, $out, $merge), yellow for caution (SORT), green for index-backed stages, neutral for everything else.
  • At-a-glance meta line — a summary row under the title shows via index_name · 12 ms · 1,500 examined without expanding any section.
  • Collapsible JSON — long filters, accumulators, and $search queries are now collapsible instead of monospace walls.
  • Clean index boundsindexBounds entries no longer show double-escaped quotes.
  • Log-scaled Data Flow funnel — bar heights use a log scale so small counts aren't squashed next to large ones.
  • Efficiency bar threshold ticks — faint tick marks at 30% and 80% show which zone you're in.

App-wide

  • OS autocorrect disabled — spellcheck, autocorrect, and autocapitalize are turned off app-wide so connection strings, queries, and other technical input aren't silently modified.
  • Window restore fixed — the app now reliably restores your last window size and position on launch, including on secondary monitors.
  • Sidecar auth token — the local tRPC server now requires a per-session Bearer token, preventing other processes on localhost from issuing queries against the sidecar.

Sidebar

  • Reveal in sidebar scroll — "Reveal in sidebar" now reliably scrolls to the target item.

Editor

  • More BSON constructorsBinData, UUID, Timestamp, MinKey, MaxKey, and DBRef now work at runtime, not just in autocomplete.
  • Shell helpersprint, printjson, tojson, and sleep(ms) are now available in query tabs.
  • Accurate number-constructor hintsNumberLong, NumberDecimal, and Decimal128 autocomplete now matches what actually exists at runtime.
  • Fresh library types — autocomplete for faker, luxon, dayjs, and lodash is driven by real installed .d.ts files, so newer methods appear and removed ones are gone.
  • Richer BSON value typesObjectId, Binary, Long, Decimal128, Timestamp, UUID, and DBRef values show the full class API on hover.
  • UUID fields typed correctly — schema-analyzed UUID fields are now typed as the UUID BSON class, not string.
  • Web APIs at runtimeURL, URLSearchParams, fetch, crypto, TextEncoder/Decoder, atob/btoa, and Blob now work in query tabs.
  • Cancellable scripts — a new abortSignal global lets you cancel user-owned async work (e.g. fetch) when you click Stop.
  • Zod and BSON globalsz (Zod v4) for runtime validation and BSON for Extended JSON round-trips are now available with full autocomplete.
  • Lodash/fp and toEJSON()_fp exposes curried lodash, and toEJSON() gives Extended JSON output as a string.
  • Console output panelconsole.log/warn/error and print calls are now shown in a collapsible panel above results.
v1.4.23 View on GitHub

Monghoul 1.4.23

Sidebar

  • Connection status indicator — Connections now show whether they are online or offline. Disconnected connections appear dimmed in the sidebar, and the connection popover displays the current status.
  • Connect and disconnect from context menu — Right-click a connection to explicitly connect or disconnect. The status updates instantly after running a query or using the menu action.

Detached Windows

  • Query results now update — Fixed detached windows not receiving server events, which caused query output to stay stale after re-running.
  • Reattach recovery — If merging a detached tab back fails, the window close button now works correctly instead of silently breaking.

UI Polish

  • Tab drag preview text color — Fixed the dragged tab preview showing inverted text colors (dark text on dark themes, light text on light themes).
  • Theme editor panel header — Aligned the theme editor header height to match the tabs panel for a consistent look.
v1.4.22 View on GitHub

Monghoul 1.4.22

Editor

  • Autocomplete accepts on Enter and Tab — Both Enter and Tab now accept autocomplete suggestions, so you can use whichever feels natural.
  • Smarter suggestion timing — Autocomplete suggestions no longer appear while typing continuously; they only show after a boundary character (space, bracket, colon, etc.) or a trigger character like $ or {.
  • Comma no longer triggers suggestions — Typing a comma and pressing Enter now inserts a newline instead of accepting an unwanted suggestion.
  • $exists: 0 no longer flagged as error — The editor now correctly accepts numeric values for $exists, matching MongoDB's actual behavior.
v1.4.21 View on GitHub

Monghoul 1.4.21

Aggregation Builder

  • Capped stage width — Pipeline stages no longer stretch edge-to-edge on wide screens. Stages are now capped at 900px and centered, keeping the builder comfortable to read on large monitors.
  • Formatted code on editor switch — Switching from the visual builder to the code editor now auto-formats the generated pipeline with Prettier.

Editor

  • Snippet field reference fix — All autocomplete snippets now produce correct MongoDB syntax. Field references use $field and variable references use $$var, fixing a systemic escaping bug that doubled the $ prefix on field paths.

UI Polish

  • Select dropdown positioning fix — Dropdowns that open upward now align to the select button instead of its label. Previously the dropdown would float too high when the select had a label above it, most noticeably in chart view configuration.
v1.4.20 View on GitHub

Monghoul 1.4.20

Editor

  • Schema analysis opt-out — Auto schema analysis can now be disabled globally or per connection. A global toggle and sample size selector (50/100/500 docs) are available in the footer app info popover and the no-connections welcome screen. Each connection can override the global default via the Advanced tab in the connection modal (Default/On/Off). When disabled, the schema banner still appears and analysis can be triggered manually.

Connection Modal

  • SRV support in form mode — A new "SRV record" checkbox enables mongodb+srv:// connections in form mode. The port field hides automatically since SRV resolves it via DNS. Switching from a pasted SRV URI to form mode auto-enables the toggle.
  • Bidirectional URI ↔ form sync — Switching from form mode back to URI mode now rebuilds the URI from form fields. Previously it showed a stale URI.
  • Password always saved (encrypted) — Passwords are now AES-256-GCM encrypted at rest using a device-bound key. The "Save password" checkbox has been removed since credentials are always stored securely.

UI Polish

  • No Connections redesign — Cleaner layout with a preferences card grouping all settings in a 2-column grid, keyboard shortcut embedded in the button, and schema sample size on its own row.
v1.4.19 View on GitHub

Monghoul 1.4.19

Sidebar

  • Collapse to zero — The sidebar can now be dragged all the way to zero width. A chevron indicator appears at narrow widths so the panel is never visually lost. Drag the handle back to restore. This is independent from the Ctrl+B toggle which fully hides the sidebar.

Query

  • Aggregation builder state restored on restart — Switching to the aggregation builder, closing the app, and reopening no longer shows a stale "code mode" toggle in the toolbar. The button now correctly reflects the persisted builder state.
  • Responsive aggregation builder — The builder toolbar and stage cards now adapt to narrow panel widths. Labels, descriptions, and the code preview panel collapse automatically below 550px so the pipeline remains usable in tight layouts.

Licensing

  • More generous free tier — Connections increased from 5 to 8, tab limit removed entirely, multi-panel layout and sidebar folders are now available on the free tier.

UI Polish

  • Monghoul Light theme refresh — Reworked the light theme with warm sage-tinted surfaces and green-branded selection and hover states instead of generic blue-gray. The editor, result viewer, scrollbars, and borders all match the green identity now.
v1.4.18 View on GitHub

Monghoul 1.4.18

Tree View

  • Persistent column width — The key/value column split in Tree View now persists across query re-runs and app restarts. The width is saved per tab and included when saving or syncing favorite queries.

Sidebar

  • Customizable snippets — Collection context menu snippets and the default query opened on double-click are now fully configurable. Open the settings modal via Snippets > Customize in the context menu to add, remove, drag-to-reorder, and edit snippets with a Monaco editor. Changes auto-save and code is auto-formatted with Prettier. Star a snippet to make it the default query. Restore Defaults brings back the built-in set with a confirmation prompt.

Editor

  • $lookup field resolution — After a $lookup stage, autocomplete suggests nested field paths from the foreign collection's schema (e.g. customer.name, customer.address.city). Pipeline-form $lookup narrows suggestions to the sub-pipeline output. Foreign collections are auto-analyzed in the background when detected.
  • $replaceRoot / $replaceWith awareness — Subsequent stages see the correct fields after a $replaceRoot with a field reference or object literal, including through $lookup + $unwind + $replaceRoot chains.
  • $facet sub-pipeline tracking — Each $facet branch's output fields are tracked and nested under the branch name (e.g. byCategory._id, byCategory.count).
  • $group._id sub-fields — Object _id expressions like { year: { $year: "$date" }, month: ... } expose _id.year and _id.month in subsequent stages.
  • $unionWith schema merging — Fields from the other collection appear in autocomplete after $unionWith, with optional pipeline narrowing.
  • $sortByCount reshaping — Correctly recognized as producing _id and count fields instead of passing through the original document shape.
  • Stage-aware auto schema analysis — Collections referenced in $lookup.from, $graphLookup.from, $unionWith, $merge.into, and $out are auto-analyzed for schema, including in the visual aggregation builder.

Query

  • Explain result preserved in fullscreen — Clicking the fullscreen button in the result viewer no longer resets an explain result back to the previous query output.

Under the Hood

  • AST-based autocomplete engine — Replaced hand-written character-by-character parsers with an acorn-loose AST module. Single parse per keystroke instead of multiple redundant scans. More maintainable and easier to extend.
v1.4.17 View on GitHub

Monghoul 1.4.17

Tree View

  • Resizable key/value columns — The KEY and VALUE columns in Tree View now have a visible border delimiter and a draggable resize handle, matching the Table View experience.

Editor

  • Enter key no longer hijacks newlines — Pressing Enter in the query or stage editor now always inserts a newline instead of accepting the autocomplete suggestion. Use Tab to accept suggestions.
  • Correct field suggestions in $match — Typing a key inside a $match stage no longer suggests "$field" references; plain field names are shown instead.

Query

  • Default result view — Right-click the Table or Tree button in the result header to set it as the default view for all new queries. Choose "Reset to auto-detect" to go back to the automatic behavior.
  • Per-page setting persists — The documents-per-page selection in the result viewer is now properly restored when switching tabs or reloading the app.
  • Accurate execution timer — The query execution timer now starts from the server-side timestamp instead of when the client first notices the loading state.

Sidebar

  • Correct collection sizes — Collection size now shows the on-disk (compressed) size. Previously displayed the uncompressed logical size which could be several times larger.
v1.4.16 View on GitHub

Monghoul 1.4.16

Status Bar

  • Accurate RAM display — Memory indicator now shows the same value as Activity Monitor on macOS, including WebView and helper processes that were previously invisible. On Windows and Linux, grandchild processes (e.g. WebView2 renderer/GPU) are now counted too.
  • Simplified RAM styling — Removed the warning/error color thresholds from the memory indicator since they no longer apply with accurate whole-app numbers.

Sidebar

  • Timer cleanup — Fixed several fire-after-unmount issues in sidebar navigation and hover preview timers that could cause unnecessary work when switching views rapidly.
v1.4.15 View on GitHub

Monghoul 1.4.15

Search

  • Off-thread indexing — Search indexes are now built in a Web Worker so the UI never freezes, even with 10,000+ documents. The index is built lazily on first search and cached until results change.

Table View

  • Faster search — Search now uses a pre-built index instead of recursively walking every document on each keystroke. Typing in the search bar feels instant even with thousands of documents.
  • Smarter column discovery — Column headers are now cached across pages, so switching pages no longer re-scans every document for column names.
  • Smoother row rendering — Fixed a subtle issue where search results caused every visible row to re-render even when nothing changed, by stabilizing internal match references.
  • Capped nested expansion — Expanding a cell with a large array or object now shows the first 50 items with a "Show more" button, preventing the UI from freezing on deeply nested structures.

Tree View

  • Faster search — Same pre-built search index powers Tree view search, replacing the expensive recursive matching that could stall on large or deeply nested documents.
  • Faster cross-page navigation — Jumping to the next/previous page with matches now uses the search index instead of scanning every document on every page.
v1.4.14 View on GitHub

Monghoul 1.4.14

Result Views

  • Inline JSON previews — Objects and arrays in Table and Tree views now show syntax-highlighted content instead of generic "Object{3}" / "Array[3]" labels. Keys, strings, numbers, dates, and ObjectIds are each colored by type, with graceful truncation and item counts for long values.
  • Syntax-highlighted hover popover — Hovering over a complex cell in Table view shows a larger, properly indented JSON preview with full syntax coloring — replaces the old plain-text popup.
  • Fullscreen for all views — The fullscreen button now appears on every view type, including Explain.
  • Quieter type badges — Tree view type badges are now borderless and subtler, reducing visual clutter next to the colorful JSON previews.
  • Softer focus indicators — Active cell/row highlight in Table and Tree views uses a subtle primary border instead of a bold outline.
  • Striped Tree view — Rows now alternate background color by row index for easier scanning.

Keyboard Shortcuts

  • Ctrl+S formats code — The familiar save shortcut now formats the active tab's code with Prettier. Works both inside the editor and globally.
  • Ctrl+Shift+S saves favorite — Save/update favorite moved here to make room for format.
v1.4.13 View on GitHub

Monghoul 1.4.13

Result Viewer

  • Collapsible result panel — The result panel can now be resized all the way down to nearly zero. Pagination hides when the panel is short, and a minimal "N results" indicator appears when fully collapsed.
  • Index suggestions moved up — In the Explain view, suggested indexes now appear right after the summary metrics instead of below the execution plan, so you see them immediately.

Aggregation Builder

  • Pretty-formatted stages — Switching from code to builder mode now formats the parsed stage bodies with Prettier and clean 2-space indentation, instead of showing them as dense single-line blobs.
  • Live editor code — The builder now reads the current editor content when switching modes, not the last-saved database value. Unsaved edits are parsed correctly.

MCP

  • Automatic session recovery — When a session expires (app restart, timeout), the server silently creates a new one instead of returning "Server not initialized" errors. Tool calls go through seamlessly without needing to reconnect.

Date Helper

  • Timezone-aware presets — Date presets (Today, This Week, etc.) now use the local timezone instead of UTC.
  • Year input — Replaced the year dropdown with a text input for faster navigation to any year.
  • Independent range calendars — From/To calendars in range mode navigate independently instead of being locked together.
v1.4.12 View on GitHub

Monghoul 1.4.12

Result Viewer

  • Compact data views — Tree view and table view are now denser with consistent font sizes across both views. Content font reduced to 12px, headers to 10px, and row heights tightened for more visible data per screen.

Charts

  • Field selector shows options on click — The Y-Axis and Group By field dropdowns now show all available fields immediately when focused, instead of requiring you to start typing first.
  • Dropdown positioning — Field selector dropdowns no longer appear far from the input when flipping above due to lack of space below.
  • Better empty state — When selected fields produce no chartable data, the preview now says so explicitly and suggests switching to "count" aggregation, instead of showing the generic "Select fields" message.
  • Date interval detection — Easy mode now correctly re-detects the suggested date interval when switching between date fields.
  • Date aggregation reset — In Advanced mode, switching to a different date X-axis field re-enables date aggregation even if it was previously disabled.
  • Scatter trend lines — Scatter charts now have a "Trend Line" checkbox in Advanced mode that overlays a linear regression line on each series. Works with both numeric and categorical X axes.
v1.4.11 View on GitHub

Monghoul 1.4.11

MCP

  • Sync tools return datasync_databases, sync_collections, and sync_indexes now return the actual database names, collection names, and index details instead of a generic success message. No more extra round-trip to list_connections after syncing.
  • Live editor sync — When an agent updates a tab's code via MCP, the editor now reflects the change immediately instead of staying on the old content.
  • Leaner responses — Trimmed agent instructions, removed pretty-printed JSON, and slimmed down list_connections output. Typical sessions use significantly fewer tokens.
  • Removed unnecessary toolsget_license_status and get_collection_schemas have been removed. MCP only works on the Pro tier, so license checks are redundant. Schema analysis should use analyze_schema directly.

Result Viewer

  • Small panel detection in tab fullscreen — The result header now correctly switches to compact mode when the panel is narrow, even in tab fullscreen. Previously it was forced to full-width mode regardless of actual panel size.
v1.4.10 View on GitHub

Monghoul 1.4.10

Table View

  • Sort clears selection — Changing the sort column or direction now clears the row selection and focused cell, preventing stale selections that pointed to wrong rows.
  • Column resize stability — Fixed a rare crash when resizing columns.

UI Polish

  • Select dropdown positioning — Dropdown menus no longer appear far above their trigger when there isn't enough space below.
v1.4.9 View on GitHub

Monghoul 1.4.9

Inline Editing

  • Date picker popover — Editing a Date field now opens a calendar with time spinners and quick presets (Now, Today, Yesterday, Start of week, 1st of month, 1st of year) instead of requiring you to type an ISO string by hand.
  • Timezone support — The date picker includes a timezone selector so you can view and edit dates in any timezone, not just UTC.
  • Themed calendar dropdowns — Month and year selectors in both the inline date editor and the query toolbar Date Helper now use the app's themed dropdowns instead of unstyled native browser selects.

Context Menus

  • Consistent field actions — Right-clicking a field in Tree View now shows Insert Document, Copy Document, and all other document-level actions that were previously only on the document header row.
  • Expanded panel menu — The Table View expanded panel (nested data viewer) now has the full context menu: Filter by Value, Unset Field, Copy Document, Clone, Insert, Edit, and Delete Document.

Aggregation Builder

  • Prominent Add Stage button — The empty state now leads with a solid primary-colored Add Stage button at the top, with templates below.
  • Preview safety limit — Disabling "Preview safety limit" now actually removes the 200-document cap, allowing previews up to 1,000 documents.

Query Toolbar

  • Date Helper timezone fix — The time spinners now correctly represent wall-clock time in the selected timezone instead of always using your local timezone.
  • Date Helper navigation — Selecting a preset or picking a date now navigates the calendar to the correct month.
  • Time input fix — Typing two-digit values (e.g. "22") into time spinners no longer splits into separate digits.

Snippets

  • Runnable snippets — All code snippets in the collection context menu now use concrete values and real helper calls (faker, dayjs, luxon) instead of placeholder comments.

Tabs

  • Middle-click to close — Middle-clicking a tab to close it now works reliably
v1.4.8 View on GitHub

Monghoul 1.4.8

Table View

  • Persistent column state — Column order, widths, sort, and pinned state are now saved per tab and restored when you reopen the app.
  • Edit Field in New Tab — Right-click any array or object value to open it in a dedicated tab with an updateOne query targeting that field.

Context Menus

  • Filter, Unset, Clone — New context menu actions: filter by a value, unset a field (single doc or all docs), and clone a document. Available in both Tree View and Table View.
  • Consistent structure — Context menus now follow the same section order across all views, with clear separators between edit, field, copy, and document actions.
  • Compact sub-menus — Sub-menus are more compact and position correctly on first open.

Favorites

  • Table state in favorites — Saving a favorite query now includes the table configuration, so your column layout is restored when you open it.

UI Polish

  • Compact result headers — Empty or minimal result views use a compact inline header instead of a large centered icon.
v1.4.7 View on GitHub

Monghoul 1.4.7

Updates

  • In-app update install — The "Check for Updates" button in the App Info popover now downloads and installs the update directly, then relaunches. Previously it only opened the GitHub release page.

Tabs

  • New Query Tab fixed — The "New Query Tab" menu item now correctly opens the command palette. Previously it silently failed due to a missing keyboard event property.
v1.4.6 View on GitHub

Monghoul 1.4.6

Table view

  • Headers — remove the column type badges
v1.4.5 View on GitHub

Monghoul 1.4.5

Licensing

  • Payments — Unlocked the purchase functionality, now you can buy a PRO plan
  • Downgrade notifications — When your license is downgraded (refund, payment failure, cancellation, trial expiry), a toast notification explains why, and the License Modal shows a persistent notice with the reason.
  • Improved License Modal — Subscription info and management actions are now a single unified card instead of separate sections. Actions styled as clean text links. Subscription ID or license key shown with click-to-copy.

Editor

  • Code formatting — New floating format button (Shift+Alt+F) auto-formats your code with Prettier. MongoDB method chains are broken onto separate lines for readability. Generated code in new tabs is also auto-formatted.
  • Line numbers on narrow panels — Line numbers automatically hide when the editor panel is too narrow (<350px) to save space.

Aggregation Builder

  • New stages — Added support for $search, $vectorSearch, and $searchMeta in both the aggregation builder and explain view.
  • Undo/redo stability — Fixed a bug where switching a stage's operator after editing its body could silently discard your edits if triggered by undo/redo.

Query Toolbar

  • Responsive compaction — The toolbar now progressively hides elements as the panel shrinks: button labels disappear first, then the date helper, then connection/database selectors. Run, Explain, and favorites always stay visible.
  • Favorites always right-aligned — The favorite button stays pinned to the right edge even when the toolbar wraps to multiple lines.

Date Helper

  • Curated timezones — Replaced the overwhelming 400+ timezone list with 58 hand-picked entries covering all major cities, plus raw UTC offset entries (UTC-12 through UTC+14). Added a "Local Time" option that uses your system timezone.

Table View

  • Focused cell fix — The focus indicator no longer bleeds through pinned columns when scrolling horizontally.
  • Edit input styling — Consistent height and border radius across all inline edit inputs (text, boolean select, null display, enum combobox).

Sidebar

  • Add connection button — Moved to the Connections section header. Appears on hover alongside the "New folder" button.
  • Section hover actions — Header action buttons now appear when hovering anywhere in the section, not just the header itself.
  • Ctrl+F sidebar filter — Pressing Ctrl+F while the cursor is over the sidebar activates the tree filter instead of browser find.
  • Pinned collection colors — Pinned collections now use the same default color as the connection tree when no custom color is set.

Theme Editor

  • Color highlight on hover — Hovering a color swatch in the theme editor flashes the corresponding CSS variable across the entire UI, so you can instantly see which elements use that color.

UI Polish

  • Toasts moved to bottom-right — Notifications now appear above the footer bar instead of the top-right corner, avoiding overlap with window controls and editor indicators.
v1.4.4 View on GitHub

Monghoul 1.4.4

Themes

  • Ink and Paper — Two new high-contrast monochrome themes. Ink is pure black with white text, Paper is pure white with black text. Both use grayscale for all UI elements with vivid semantic colors only for errors, warnings, and success states.
  • Theme-aware colors — Replaced hardcoded colors across the app with theme variables. Sidebar icons, toolbar buttons, tab indicators, boolean toggles, aggregation builder stages, and update banners all now respond to the active theme.

Query

  • Cancel during connect — The Stop button now works even while MongoDB is still connecting, instead of blocking until the 30-second timeout.
  • Compact result header — Tighter padding, flat view switcher tabs, and scan badge visible on small panels. Recovers ~14px of vertical space.
  • Compact pagination — Simplified from a multi-element toolbar to a minimal inline bar. Page size is now a click-to-edit text button with presets.

Table View

  • Resize handle overlap — Column resize handles no longer bleed through pinned columns during horizontal scrolling.
  • Expanded panel cleanup — Removed duplicate header from the expanded document panel and reduced tree indent from 16px to 10px per level.

Sidebar

  • No native tooltips — Removed browser-native title tooltips from tree items, stat badges, and validation badges. Button tooltips are kept.

MCP

  • Connection stability — MCP sessions now survive app restarts (auto-recovers stale sessions), idle timeout increased to prevent silent disconnects, and session TTL extended from 30 minutes to 4 hours.

Footer

  • App info rework — The Monghoul version popover now includes a manual "Check for Updates" button and a GitHub link for bug reports. Settings are grouped under a "Preferences" label.

UI Polish

  • Toolbar buttons — Simplified button styles, removed heavy shadows, and added pointer cursor globally for all non-disabled buttons.
  • macOS auto-update — Fixed signature mismatch on universal builds by producing architecture-specific filenames for each platform.
v1.4.3 View on GitHub

Monghoul 1.4.3

Query

  • Execution timer — A live elapsed timer now appears below the spinner while a query is running, giving immediate feedback on long-running queries.
  • Smarter schema banner — The "Generating schema..." banner no longer flashes for fast analyses — it only appears after 3 seconds. Empty collections show a clear "no documents" message instead of a misleading "Schema not found".

Editor

  • Font jump fix — Use theme font settings in Monaco initial options instead of hardcoded values. Eliminates horizontal text shift on tab open and theme change.
  • IntelliSense badge flash fix — Skip the loading/ready badge when schema types are already cached (tab move, split, clone). Badge only shows on genuinely cold starts.

UI Polish

  • Drag window from tab bar — Click and drag empty space in the tab bar to move the window — no need to aim for the narrow title bar area.
  • Cleaner app loader — Compact animated logo with a smooth fade-in. Removed the fake progress bar and "Starting" text.
  • Polished scrollbars — Unified scrollbar styles using theme tokens. Thinner, fully rounded, expand on hover. Track invisible by default, subtle on hover.
  • Sticky DB header shadow — Sticky database headers in the connection tree now show a subtle gradient shadow when stuck on scroll.
  • Boolean select border — Fixed a double border on the boolean value dropdown in the inline field editor.
  • Scroll shadows — Header shadow appears when scrolled
v1.4.2 View on GitHub

Monghoul v1.4.2

Explain View — Rebuilt

Works for any query including aggregation pipelines. Performance grade badge, summary metrics, full aggregation pipeline visualization with per-stage details and document flow, data flow funnel, and actionable performance insights.

Index Suggestions from Explain

Detects missing indexes and suggests optimal compound indexes following the ESR rule. One-click Create button opens the Create Index modal pre-filled with the suggested fields.

Create Index Modal — Refreshed

Reorder buttons for field priority, live createIndex() preview, and pre-fill support from explain suggestions.

Bug Fixes

  • Fixed "Manage License" block showing for trial users instead of upgrade options
  • Fixed cluster monitor tab shifting in the tab bar on every poll cycle
v1.4.1 View on GitHub

Monghoul v1.4.1

Favorites

  • Full view state saved with favorites — saving a query to favorites now preserves chart configuration, view type, pinned columns, page size, and read preference. Opening a favorite restores the exact view you had, charts included.
  • MCP save_favorite_query tool now accepts viewType, chartConfig, and pageSize parameters.

Custom Themes

  • Live theme updates — editing a custom theme's colors via MCP now reflects immediately in the UI without needing to toggle themes.
v1.4.0 View on GitHub

Monghoul v1.4.0

Free Trial

  • 14-days Pro trial — no payment required
  • Start from the License modal when you hit a free tier limit
  • One trial per device, can't be reset by reinstalling
  • Auto-restores if you reinstall mid-trial

Infrastructure

  • Fresh database schema — no migration chain on startup
v1.3.8 View on GitHub

Monghoul v1.3.8

Schema Auto-Generation

  • Multi-collection support — scripts referencing multiple collections get all missing schemas generated in parallel, with a live timer showing progress
  • Reacts to connection and database switches — re-evaluates missing schemas automatically

Editor

  • Fixed stale autocomplete after switching connections
v1.3.7 View on GitHub

v1.3.7

Editor

  • Fixed false validation errors when using regex patterns ({ field: /pattern/ }) or null values in queries
  • Auto-generate schema in the background when opening a tab for a collection without one — autocomplete is now available from the start
  • New schema banner at the bottom of the editor with a one-click "Generate Schema" button when autocomplete is unavailable
  • Fixed theme race condition that could apply the wrong editor theme
  • Fixed invisible cursor in light themes

Keyboard Shortcuts

  • Fixed hotkeys not working on non-English keyboard layouts
  • Option+Arrow now works for word navigation in the editor
  • Updated tab/panel switching shortcuts

Auto-Update

  • Install failures now show the actual error message in the update banner with a Retry button (previously errors were silently
    swallowed)
  • Added download progress logging for easier debugging

Bug Fixes

  • Fixed "save to favorites" regression
  • Schema analysis failures now show a toast error instead of failing silently
v1.3.6 View on GitHub

Monghoul v1.3.6

Tab Restore (Ctrl+Shift+T)

Closed tabs are no longer gone forever. Press Ctrl+Shift+T (Cmd+Shift+T on Mac) to restore the most recently closed tab — just like in your browser. Tabs are soft-deleted on close: the code, connection context, view settings, and chart config are all preserved. Only the query
result data is cleared to save space.

  • Ctrl+Shift+T restores the last closed tab to the active panel
  • Command Palette (Ctrl+K) now shows a "Recently Closed" section — browse and restore any closed tab
  • Up to 100 closed tabs are kept; oldest are automatically purged

Tab Search API & MCP Integration

New search_tabs and restore_tab MCP tools let AI agents search across all tabs (active and closed) by text, connection, database, tab type, or chart presence — and restore them directly.

Use cases: "find that sales report with a chart from last week", "restore the aggregation I ran on the reviews collection".

Other Fixes

  • macOS auto-updates fixed — removed the EULA from the DMG installer that was blocking silent updates
  • Faster editor autocomplete — schema data from background analysis now reaches the editor sooner (parallel invalidation, shorter cache staleness)
v1.3.5 View on GitHub

Monghoul v1.3.5

Compact & Responsive UI

The entire result viewer adapts gracefully to narrow panels and small window sizes:

  • Denser data display — Row heights reduced across table view (32→28px) and tree view (28→26px), fitting more data on screen
  • Responsive query toolbar — Button labels, date helper, explain button, and builder toggle progressively hide as the toolbar shrinks
  • Responsive result header — View switcher collapses to a compact dropdown on small panels; stats, export, and scan badge hide when space is tight
  • Responsive tree view — Type column hides and indentation reduces on narrow panels to prevent horizontal scroll
  • Compact inline editor — Field editor, type selector, and action buttons scale down for small panels
  • Responsive footer — Less-essential buttons (hotkeys, theme, metrics) hidden at small window widths

Editing Improvements

  • Fixed nested field editing — Editing fields inside nested arrays (e.g. orders[0].items[1].qty) now works correctly in both table and tree views
  • Optimistic updates preserved — Editing a field no longer collapses expanded tree nodes or switches the view type
  • Table view live data — Expanded nested viewers in table view reflect optimistic updates immediately
  • New execution backend — Inline edits now run through the same sandboxed execution pipeline as regular queries, with connection pooling, write protection, and full operation logging

Custom Page Size

  • Type any value (1–10,000) directly into the pagination input, or pick from presets (10, 25, 50, 100, 200, 500, 1000)
  • Page size is persisted per tab

Other Improvements

  • Table column headers no longer forced to uppercase — field names shown as-is
  • ESC key only exits window fullscreen (not tab fullscreen), with updated tooltip
  • Fixed Mac updater doing nothing when pressing Install
  • Cluster monitor interval selector collapses to a dropdown on small panels
  • Reusable Switch component for consistent toggle styling
  • Dropdown popover rendering fixed (no longer clipped by editor overlays)
v1.3.4 View on GitHub
  • Theme-aware chart colors — chart series colors now come from the active theme instead of a hardcoded palette. Switch themes and charts adapt instantly. Each of the 9 built-in themes ships with a hand-curated 12-color palette drawn from its own identity.
  • Fix stacked bar & stacked area charts — these chart types were silently rendering blank. They now render correctly with proper stacking.
  • Readable stacked labels — labels inside stacked bar segments use white text with a dark outline stroke instead of blending into the bar color.
  • MCP chart colors — create_theme now accepts a chartColors parameter, and get_theme_schema documents it.
  • Auto-update toggle — new setting in the footer to enable or disable automatic update checks.
  • Improved empty state — the "no connections" screen has been redesigned.
  • Footer improvements — updated layout and information density.
  • Fix connection tree filter spacing
v1.3.3 View on GitHub

Fix showing the release changelog after the update, improve the updater UI to match themes better