Introduction
sql.garden is a local-first desktop app for querying and exploring data on an infinite canvas. It runs DuckDB in-process — no servers, no cloud, no latency.
What it is
- An infinite canvas where you place SQL query nodes, charts, data tables, and markdown notes
- A local DuckDB environment that can query Parquet, CSV, JSON, databases, and S3-compatible stores
- An MCP server that exposes the canvas to AI assistants like Claude and Cursor
What it isn't
sql.garden is not a replacement for a production database GUI. It's a scratchpad and exploration tool — built for analysts, engineers, and anyone who thinks visually about data.
Architecture
┌─────────────────────────────────┐
│ Desktop App │
│ ┌──────────┐ ┌─────────────┐ │
│ │ Vue 3 │ │ Go/Wails │ │
│ │ Frontend │◄─►│ Backend │ │
│ └──────────┘ └──────┬──────┘ │
│ │ │
│ ┌───────▼──────┐ │
│ │ DuckDB │ │
│ │ (in-process) │ │
│ └──────┬───────┘ │
└───────────────────────┼─────────┘
│
┌─────────────▼──────────────┐
│ MCP Server :37421 │
│ Claude / Cursor / etc. │
└────────────────────────────┘- The frontend is a Vue 3 app embedded via Wails. In the browser sandbox it runs as a standalone SPA.
- The backend (Go) owns DuckDB and exposes it via Wails bindings and the MCP server.
- The MCP server runs on
http://127.0.0.1:37421/mcpand is reachable by any local MCP client.
Open source
sql.garden is released under the GPL v3 license. The source is on GitHub.