PostgreSQL vs Tabularis

A side-by-side look at the PostgreSQL and Tabularis MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.

PostgreSQL logoPostgreSQLDatabases · Local subprocess (stdio)MCP server for PostgreSQL: local, Docker, RDS, Neon, Supabase, or behind an SSH bastion.64GoodAuth: not declaredTabularis logoTabularisDatabasesOpen-source desktop SQL workspace with 3 built-in database drivers and 16 shipped plugins, including SQL Server, DuckDB, ClickHouse and Redis. Built-in MCP server for Claude, Cursor and Devin, SQL notebooks and visual EXPLAIN.59GoodAuth: no auth required

Verdict: choose PostgreSQL for databases work as a local process; choose Tabularis for databases. You can also run both side by side in one mcpServers block.

Which MCP server should you choose?

PostgreSQL logoChoose PostgreSQL when

  • You need dedicated capabilities in the Databases domain.
  • You prefer a local stdio subprocess transport.
  • You want tools like query, execute, list_schemas.
Explore PostgreSQL

Tabularis logoChoose Tabularis when

  • You need dedicated capabilities in the Databases domain.
  • Its auth model fits you: No auth required.
  • You want tools like list_connections, list_databases, list_tables.
Explore Tabularis

Feature & specification comparison

Rows where the two servers differ are marked.

SpecPostgreSQL logoPostgreSQLTabularis logoTabularis
CategoryDatabasesDatabases
Quality signal64/100 · Good59/100 · Good
Install commandConfirmedNot confirmed yet
TransportLocal subprocess (stdio)—
AuthNot declaredNo auth required
PricingNot declaredFree
Required env varsNone listedNone listed
Verified ownerCommunity listingCommunity listing
GitHub stars245,268
Directory activity 4 views 0 installs 0 upvotes 1 views 0 installs 0 upvotes
Tools55

Tools & capabilities

PostgreSQL tools 5

  • queryRun one read-only SQL statement against the connected PostgreSQL database and get rows back as JSON. Send exactly one statement per call (SELECT, WITH, EXPLAIN, or SHOW). It runs inside an engine-enforced read-only transaction, so any write is refused by the database. Use this tool for all data reading, aggregation, and query planning. Returns {rows, rowCount, returnedRows, truncated}, plus hint when truncated is true. Prefer $1, $2 placeholders with the params array over interpolating values. Results are capped at ~32768 bytes; truncated:true means rows were dropped - add LIMIT/WHERE or select fewer columns.
  • executeRun a data-modifying SQL statement (INSERT/UPDATE/DELETE or DDL). Currently DISABLED: the server is read-only, so this returns an error and changes nothing. To enable writes, the operator must start the server with PG_ALLOW_WRITE=true.
  • list_schemasList every schema in the connected database. Start here when exploring an unfamiliar database, then call list_tables for the schema you care about. Returns {schemas: [name, ...]}.
  • list_tablesList all tables in a schema (default: 'public'). Use this before querying tables you have not seen yet, then call describe_table for column details. Returns {tables: [name, ...]}.
  • describe_tableShow the structure of one table: column names, data types, nullability, defaults, and primary-key membership. Call this before writing non-trivial queries against a table. Returns {columns: [{column, type, nullable, default, is_primary_key}, ...]}.

Tabularis tools 5

  • list_connectionsList all saved database connections
  • list_databasesList all databases available for a connection
  • list_tablesList tables in a connection (with optional schema filter)
  • describe_tableGet full schema: columns, indexes, foreign keys
  • run_queryExecute any SQL query and return results

Ready-to-paste client configs

Paste 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.

PostgreSQL

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "postgresql": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-postgres-server"
      ]
    }
  }
}

Tabularis

No confirmed install command for Tabularis yet — follow the setup steps linked from its listing page rather than a guessed package name.

Frequently asked questions

PostgreSQL is categorized under Databases and uses a local stdio subprocess. Tabularis belongs to Databases and uses an install path we have not confirmed yet. Pick PostgreSQL for databases work and Tabularis for databases.

Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client. Tabularis has no confirmed install command yet — follow its own setup instructions.

PostgreSQL has no declared pricing — check the project's own site. Tabularis is listed as free. Auth: no auth required. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.

Yes. MCP clients support multiple servers: add postgresql and tabularis as separate keys in the same mcpServers object, and your assistant will call tools from either one.

On AllMCPs, PostgreSQL has a quality signal of 64/100 (Good) with 4 views, 0 installs and 24 GitHub stars. Tabularis has 59/100 (Good) with 1 views, 0 installs and 5,268 GitHub stars.