The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Tabellum listing page.
Let your AI assistant work with your databases through Tabellum, a desktop database client for PostgreSQL, MySQL/MariaDB, SQL Server and BigQuery. The MCP server is hosted by the running app on your machine; this package is a small stdio shim that forwards to it. Queries the assistant writes appear live in the editor, and nothing that changes data runs without your click in the app.
tabellum@dudko.dev/tabellum-mcp — Node.js 24+~/.tabellum/mcp.json.With the Tabellum app open, the assistant can:
| Tool | What it does |
|---|---|
list_connections | Connection names, drivers, read-only flags. |
describe_schema | Object names per schema. |
describe_object | Columns, indexes, constraints, DDL. |
list_users | Database users and roles. |
sample_rows | Up to N rows — only where the connection allows sharing rows. |
run_read | Execute a statement the engine classifies as a read. |
propose_write | Submit a write/DDL for your approval in the app (10-minute timeout). |
explain | EXPLAIN in the connection's dialect. |
draft_to_editor | Stream SQL live into an editor tab. |
open_editor_tab | Open a tab bound to a connection. |
Start the Tabellum app first (macOS, Windows or Linux). The shim reads the
app's local port and token from ~/.tabellum/mcp.json, written while the app
runs; with the app closed every call answers "Tabellum is not running".
Prefer not to use the marketplace? Add the server directly:
claude_desktop_config.json (Settings → Developer → Edit Config):
~/.cursor/mcp.json or .cursor/mcp.json:
propose_write and
waits for your click. A label claimed by the model never overrides it.127.0.0.1 with a per-install bearer
token (Settings → Agents shows it and can regenerate it).sample_rows returns rows only where
you enabled sharing for that connection.~/.tabellum/mcp.json.declined: timeout.