Gridex

A native macOS, Windows, and Linux database IDE for PostgreSQL, MySQL, SQLite, Redis, MongoDB, SQL Server, and ClickHouse, with a built-in MCP server and AI chat that reads your schema.

1.5Kstars
Apache License 2.0

Repository Health

Pre-computed score based on development activity, maintenance, community, maturity, and trend momentum.How we score it →
76/100Good
Development Activity92
Maintenance100
Community48
Maturity24
Momentum40

Technical Analysis

AI-assessed by reading the actual repository — architecture, code quality, innovation, and documentation.How we score it →
75/100Good
Architecture85
Code Quality74
Innovation80
Learning Curve60

Gridex is a native database IDE — AppKit on macOS, WinUI 3 on Windows, Qt 6 on Linux, no Electron and no web views for the grid — built around a single DatabaseAdapter protocol that seven different database drivers implement: PostgreSQL, MySQL, SQLite, Redis, MongoDB, SQL Server, and ClickHouse. Because every adapter conforms to the same protocol, the grid, query editor, ER diagram, backup tooling, and MCP layer all work identically regardless of which engine a connection points at.

What sets it apart from other database GUIs is treating an MCP (Model Context Protocol) server as a core feature rather than an add-on. Any saved connection can be exposed to MCP clients like Claude Desktop or Cursor through a tiered permission model — schema browsing is always allowed, reads require at least read-only mode, and writes require read-write mode plus explicit approval — backed by a SQL sanitizer, identifier validator, row-count estimator, rate limiter, and a persisted audit log of every tool call. A separate AI chat panel lets Claude, GPT, Gemini, or a local Ollama model read the active connection’s schema and write SQL scoped to it, with requests going directly from the user’s machine to the provider.

Beyond AI features, Gridex covers the ground expected of a serious database client: an auto-laid-out ER diagram rendered live from schema, a multi-tab syntax-highlighted query editor with searchable history, SSH tunneling and mutual TLS (including Teleport-issued certs), per-engine native backup and restore, and connection import from TablePlus, Navicat, DataGrip, and DBeaver.

What You Get

  • One native app that connects to PostgreSQL, MySQL, SQLite, Redis, MongoDB, SQL Server, and ClickHouse
  • A built-in MCP server so AI agents can query and act on your databases under tiered permissions with a full audit trail
  • AI chat (Claude, GPT, Gemini, or local Ollama) that reads your schema and writes SQL scoped to the active connection
  • An ER diagram canvas that renders live from your schema with no separate import step
  • SSH tunneling and mutual TLS support for connecting through bastions or Teleport-style proxies
  • Native backup and restore per engine, plus one-step import of saved connections from TablePlus, Navicat, DataGrip, and DBeaver

Common Use Cases

  • Cross-database engineering teams - Backend engineers juggling Postgres, MySQL, and Redis in the same project use one native app instead of switching between separate GUI tools per engine.
  • AI-agent-driven database work - Developers wiring Claude or Cursor into a local database via MCP get schema-aware, permission-tiered access instead of hand-rolling their own database MCP server.
  • mTLS-secured infrastructure - Platform teams whose databases sit behind mutual TLS, such as through Teleport, connect directly with client certificates instead of routing through a separate proxy tool.
  • Migrating off TablePlus, Navicat, or DataGrip - Developers switching clients import their existing saved connections, including SSH configs and stored passwords, in one step.
  • Auditing agent activity - Teams that let an AI agent run queries overnight review the MCP audit log to see exactly what tools ran, what SQL executed, and what required approval.

Under The Hood

Architecture The macOS client follows a layered structure — App (lifecycle, dependency injection, configuration) → Presentation (views, view models, windows) → Domain (use cases, repositories) → Data (adapters, persistence, cache, keychain) → Core (protocols, models, errors) → Services (AI, export/import, MCP, query engine, SSH, schema inspection, updater) — wired together through a single DependencyContainer that lazily constructs shared services and repositories. Every supported database driver conforms to one shared DatabaseAdapter protocol covering connection lifecycle, query execution, schema introspection, and data manipulation, so the grid, query editor, ER diagram, backup, and MCP layers are all written against that one abstraction rather than branching per engine. Windows and Linux ship as separate native codebases (WinUI 3/C++ and Qt 6/C++ respectively) that mirror the same layering, making the DatabaseAdapter protocol the seam that would ripple through every platform’s adapters and the MCP tool layer at once if it changed.

Tech Stack The macOS app is built in Swift on AppKit and SwiftUI, using SwiftData for local persistence of saved connections, query history, and LLM provider settings, with credentials stored in the system Keychain and Sparkle handling auto-updates. Database connectivity is pure Swift throughout — PostgresNIO, a maintained MySQLNIO fork, RediStack, MongoKitten, a from-scratch TDS client for SQL Server, and a hand-rolled HTTP client for ClickHouse — layered with swift-nio-ssl and swift-nio-ssh for TLS and SSH tunneling. The Windows build uses WinUI 3 with vcpkg-managed C++ dependencies and a Velopack installer, while the Linux build uses Qt 6 with CMake and Ninja, packaged as an AppImage; both maintain their own self-update feeds, and CI runs through GitHub Actions.

Code Quality The macOS target ships a dedicated test suite with fixtures, favoring pure-logic unit tests over SwiftUI view tests — sampled tests cover JSON pretty-printing, EXPLAIN plan parsing, and adapter-specific edge cases like Redis database selection. Errors are centralized in a single typed, Sendable, Equatable error enum grouped by domain (connection, query, SSH, schema, AI) instead of ad hoc throws scattered through adapters. Naming follows consistent Swift conventions with layer-signaling suffixes (Service, Repository, Adapter), comment density is moderate, and CI runs on every pull request — though there’s no visible linter configuration at the repo root.

What Makes It Unique The most distinctive choice is treating an MCP server as a first-class part of a native desktop database client rather than a bolt-on — connections are exposed to MCP clients like Claude Desktop or Cursor through a tiered permission model backed by a dedicated security stack (a SQL sanitizer, identifier validator, row-count estimator, rate limiter, and approval gate) and a persistent audit log. It also avoids shelling out to database CLIs for engines without native Swift drivers, implementing pure-Swift protocol clients for MongoDB, SQL Server, and ClickHouse instead, and it maintains genuinely native UI codebases across AppKit, WinUI 3, and Qt 6 that share the same multi-driver core rather than wrapping a single Electron shell — though the underlying database-GUI category itself is well established by tools like TablePlus and DBeaver.

Self-Hosting

Licensing Model Apache-2.0 licensed — all features are available in downloaded builds with no restrictions or license keys required.

Self-Hosting Restrictions None found — there are no ee/, enterprise/, pro/, or cloud/ directories, and no license-check or feature-flag code gating functionality in the source.

Enterprise Features None — there is no paid tier; the project is fully open source under Apache-2.0.

License Key Required No.

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers

Search