A side-by-side look at the Db Conn MCP and Tabularis MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Db Conn MCP for databases work as a local process; choose Tabularis for databases. You can also run both side by side in one mcpServers block.
list_databases, list_tables, get_table_schema.list_connections, list_databases, list_tables.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Databases | Databases |
| Quality signal | 52/100 · Good | 59/100 · Good |
| Install command | Confirmed | Not confirmed yet |
| Transport | Local subprocess (stdio) | — |
| Auth | Not declared | No auth required |
| Pricing | Not declared | Free |
| Required env vars | None listed | None listed |
| Verified owner | Community listing | Community listing |
| GitHub stars | 2 | 5,259 |
| Directory activity | 4 views 0 installs 0 upvotes | 1 views 0 installs 0 upvotes |
| Tools | 23 | 5 |
| Full listing | View Db Conn MCP | View Tabularis |
list_databasesConfigured databases (name, mode, yolo, and `active_port` when a fallback port is in use — **no DSN**).list_tablesTables and views in a database. Narrow it in the database rather than after the fact: `pattern` keeps only names containing it (fuzzy, case-insensitive) and `limit` caps the number of rows.get_table_schemaColumns, types, primary/foreign keys for a table. Pass `include_indexes=true` to also get its indexes (`name`, key `columns` in index order — an INCLUDE payload is not listed — `unique`, `method`); omitted by default.get_database_schemaThe whole database's schema in one deterministic call. `format="json"` (default) returns every table's columns/types/PK/FK; `format="sql"` returns a **self-contained, runnable DDL script** (tables, sequences, PK/FK/UNIQUE/CHECK, indexes, trigger functions, triggers) — no extra tools required. Pass…dump_schema_faithfulByte-faithful** schema dump via the database's own `pg_dump --schema-only` — the most complete/runnable export. Requires the `pg_dump` binary on the server host; if missing, returns `pg_dump_not_found` with install guidance (see the `faithful_schema_export` prompt).sample_table_rowsFirst N rows of a table (default 10).find_columnsFind columns by name across all tables (fuzzy, case-insensitive). `limit` caps the number of rows for a broad pattern.search_valueFind **where** a value appears across tables (fuzzy); returns table/column hits + samples. Pass `tables=[…]` to scope it.get_object_definitionFaithful SQL definition of a **view / function / trigger / sequence / index** by name (native `pg_get_*def`; overloads and all schemas returned).execute_read_queryRun a single read-only statement (`SELECT`/`WITH`/…) inside a read-only transaction. Optional `params` (**real bind parameters** via `$1`/`$2` — no quoting pitfalls) and `timeout_ms`.execute_write_queryRun a mutation — gated by the safety model above. **Defaults to `dry_run=true`**: execute in a transaction, report would-be `rows_affected`, always ROLL BACK — show the user real impact *before* consenting to the real write. Committing (`dry_run=false`) requires a prior preview of the identical sta…explain_queryEXPLAIN` (optionally `ANALYZE`) a validated read-only query — confirm index usage without any write access. Takes the same `params` (`$1`/`$2` bind parameters) as `execute_read_query`, so you explain the query you will actually run rather than a literal-substituted rewrite of it.list_connectionsList all saved database connectionslist_databasesList all databases available for a connectionlist_tablesList tables in a connection (with optional schema filter)describe_tableGet full schema: columns, indexes, foreign keysrun_queryExecute any SQL query and return resultsPaste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"db-conn-mcp": {
"command": "uvx",
"args": [
"db-conn-mcp"
]
}
}
}
No confirmed install command for Tabularis yet — follow the setup steps linked from its listing page rather than a guessed package name.