DEV Community

Mads Hansen
Mads Hansen

Posted on

I gave Claude direct access to my PostgreSQL database. Here's what happened.

I expected it to be janky. It wasn't.

Three weeks ago I connected our production PostgreSQL database to Claude via MCP. No custom code, no ETL pipeline, no middleware — just a connection string and a few minutes of setup.


What changed

Before: "Hey, can someone pull churn by cohort for Q1?" → 2 days wait
After: "What's our churn by cohort for Q1?" → 8 seconds

Before: Scheduled weekly reports no one reads
After: On-demand answers from anyone who needs them


What I expected vs what happened

The skeptic in me expected hallucinations, wrong queries, broken joins.

Mostly I got: correct SQL, correct results, and one politely worded error message when I asked something ambiguous.

The model is better at reading a schema and writing a query than I expected. It helps that it can see column names, types, and relationships directly — no need to explain the data model in the prompt.


The setup

Conexor.io as the MCP layer. It handles auth, query limits, and row caps so you're not handing Claude unlimited SELECT access to your entire schema.

PostgreSQL + MCP + a few guardrails = the data layer your team actually wanted.

The free plan covers most early exploration. Takes about 5 minutes to connect.

conexor.io

Top comments (0)