A community-driven registry for Claude, Cursor, Windsurf, Cline & more. Not affiliated with Anthropic.
Are you the author? Sign in to claim
Multi-driver TUI database client with a built-in MCP server. Six databases (postgres, mysql, sqlite, duckdb, clickhouse,
The agent-native database workbench for the terminal. A DBA toolkit, an MCP server, and a vim-mode SQL editor — in one static binary.
Install · Quick start · Why narwhal · Docs

narwhal is a terminal database client built around two things every other client misses:
narwhal mcp
and you're wired.Six engines (Postgres, MySQL, SQLite, DuckDB, ClickHouse, SQL Server), three editor modes (vim / basic / emacs), one static binary.
curl -fsSL https://github.com/Nonanti/narwhal/releases/latest/download/install.sh | sh
Other channels — cargo install narwhaldb, Homebrew, AUR, Nix flake,
prebuilt tarballs — are listed in docs/install.md.
narwhal # launches the TUI
Inside:
:add — connection wizard, or :url postgres://user:pass@host/db:open <name> — connect; the sidebar fills with schemas and tablesHeadless:
narwhal exec --conn prod 'SELECT count(*) FROM orders' --format json
narwhal embeds an MCP server over stdio. Run it once and your AI assistant can browse schema, sample data, and run queries against your saved connections — with the same read-only / per-connection guards the TUI uses.
narwhal mcp --read-only
Claude Desktop (~/.config/Claude/claude_desktop_config.json):
{
"mcpServers": {
"narwhal": {
"command": "narwhal",
"args": ["mcp", "--read-only"]
}
}
}
Cursor, Zed, Continue, Aider, and custom clients work the same way.
Full setup: docs/mcp.md.
| Engine | Driver | TLS | Streaming | Cancel | DDL emit |
|---|---|---|---|---|---|
| PostgreSQL | tokio-postgres + rustls | verify-full | ✅ | ✅ | ✅ |
| MySQL / MariaDB | mysql_async | ✅ | ✅ | ✅ | ✅ |
| SQLite | rusqlite (bundled) | n/a | ✅ | — | ✅ |
| DuckDB | duckdb (bundled) | n/a | ✅ | — | ✅ |
| ClickHouse | HTTP + rustls | ✅ | ✅ | ✅ | ✅ |
| SQL Server | tiberius + rustls | ✅ | buffered | — | ✅ |
:open, every driver speaks the
same Connection trait — same streaming, same cancellation, same
schema introspection.:schema-diff
between two connections with dialect-aware DDL emit (Postgres ↔
MySQL ↔ MSSQL ↔ generic).Ctrl-C
cancels mid-run on every backend that supports it.~/.pgpass — no
plaintext-on-disk fallback.~/.ssh/config plumbing
required.| Topic | File |
|---|---|
| Install (all methods) | docs/install.md |
| Configuration | docs/configuration.md |
| Editor modes | docs/editor-modes.md |
| Mouse | docs/mouse.md |
| MCP server | docs/mcp.md |
Headless exec | docs/headless.md |
| Plugins (Lua + WASM) | docs/plugins.md |
| Connection vault | docs/vault.md |
| Audit log | docs/audit.md |
| Schema diff | docs/schema-diff.md |
| Architecture | docs/ARCHITECTURE.md |
| Building from source | docs/dev/build.md |
| Upgrading | docs/upgrading.md |
Issues and PRs welcome. See CONTRIBUTING.md.
Commit messages follow Conventional
Commits; the four CI checks
(fmt, clippy -D warnings, doc -D warnings, test) must pass.
Dual-licensed under MIT and Apache 2.0, at your option.
MCP server integration for DaVinci Resolve Studio
mcp-language-server gives MCP enabled clients access semantic tools like get definition, references, rename, and diagnos
Run Claude Code as an MCP server so any agent can delegate coding tasks to it
Browser automation using accessibility snapshots instead of screenshots