Back to Blog

How to Connect ChatGPT to Your Database with MCP

Step-by-step guide to connecting ChatGPT to your PostgreSQL, MySQL, or SQL Server database using a managed MCP server. Developer Mode setup, one secure URL, read-only by default.

ChatGPT can now talk to your database directly. Not "paste your schema and hope it guesses" — actually run queries against your real data through the Model Context Protocol (MCP), the same open standard Claude and Cursor use.

The setup is a little different from Claude Desktop because OpenAI gates custom MCP servers behind Developer Mode, and the menus moved around when connectors were renamed to "apps" in late 2025. This guide walks the current flow end to end, with the gotchas surfaced inline. (New to MCP? Start with what is an MCP server.)

Before You Start: What You Need

  • A paid ChatGPT plan. Custom MCP connectors require Developer Mode, which is available on paid plans (Plus, Pro, Business, Enterprise, Education) on the web app. This has shifted around during the beta — if you don't see Developer Mode, your plan or region is the usual reason.
  • Web browser. You set the connector up on ChatGPT web, not the mobile app. Once it's linked, it syncs to mobile automatically.
  • A database and its connection string. Postgres, MySQL, SQL Server, or Supabase. We'll get the credentials into Synra in a moment.

Terminology note: OpenAI renamed "connectors" to "apps" in December 2025. You'll see both words in the UI and across the web. They're the same feature — a custom remote MCP server you point ChatGPT at. This guide uses whatever the current menus say.

What This Actually Unlocks

Once ChatGPT can reach your database, the questions you can ask stop being hypothetical:

  • "How many users signed up last week vs the week before? Break it down by day."
  • "Find the 20 customers with the highest total order value who haven't ordered in the last 60 days."
  • "Look at the subscriptions table — how many are set to cancel at period end, and what's the total MRR at risk?"
  • "Describe the foreign key relationships between orders, order_items, and products."

ChatGPT writes the SQL, runs it through the connector, reads the real results back, and answers — then iterates when you ask a follow-up. No SQL client, no CSV exports, no copy-paste loop.

The Two Ways to Connect

Option 1 — Self-hosted MCP server. Run a local or self-hosted database MCP server, expose it over HTTPS (ChatGPT can't reach localhost — you'd need a tunnel like ngrok or Cloudflare Tunnel for testing, and real hosting for production), and manage the credentials and uptime yourself. Workable if you're a developer who wants full control.

Option 2 — Managed gateway (Synra). You save your database connection string once in a secure dashboard. Synra encrypts it with AES-256, gives you a public HTTPS MCP endpoint, and sits between ChatGPT and your database on every query. Read-only by default — INSERT, UPDATE, DELETE, and DROP are blocked at the gateway. Already reachable over the public internet (no tunnel needed), already implements the streaming HTTP + SSE transport ChatGPT expects. Paste one URL and you're done.

For a deeper comparison, see self-hosted vs managed MCP server. For most people, the managed path is dramatically less work — here's how it goes.

Step 1 — Save Your Database in Synra

  1. Sign in at mcpserver.design
  2. Go to ConnectionsAdd new connection
  3. Pick your database type — PostgreSQL, MySQL, MS SQL, or Supabase (Neon users: choose PostgreSQL or the Neon label — same backend)
  4. Paste your connection string or fill in host / port / database / user / password
  5. Click Test connection — Synra runs a one-shot query to confirm it works
  6. Save

Your credentials are now encrypted at rest. The plaintext password never leaves Synra's vault, and it never touches ChatGPT.

Step 2 — Copy Your MCP Endpoint URL

Open the Endpoints tab. You'll see a URL like:

https://app.mcpserver.design/api/mcp/aB3xY7zQ9mNpLkRv2wTs

The trailing token is your authorization — treat it like a password. Anyone with this URL can read the database you connected. (You can rotate it from the same screen if it leaks.) Copy it.

Step 3 — Enable Developer Mode in ChatGPT

  1. On ChatGPT web, click your profile → Settings
  2. Go to Apps & Connectors (older builds: Connectors)
  3. Scroll to Advanced settings at the bottom
  4. Toggle Developer mode on
  5. Accept the warning — ChatGPT will remind you that custom connectors run third-party code on your behalf

If there's no Developer mode toggle, it's a plan or region limitation (see the requirements at the top).

Step 4 — Add Synra as a Custom Connector

  1. Back in Settings → Apps & Connectors, click Create (or Add custom connector)
  2. Fill in:
    • Name — e.g. Synra Postgres
    • Description — e.g. Read-only access to my production Postgres database. Use for querying tables, schema, and data. (ChatGPT uses this text during tool discovery, so make it descriptive — it genuinely helps the model pick the connector.)
    • MCP Server URL — paste your Synra endpoint from Step 2
    • Authentication — choose No authentication. Synra authorizes via the unguessable token in the URL itself, so ChatGPT doesn't need to manage separate credentials.
  3. Confirm the trust checkbox and click Create

If it connects, ChatGPT shows the list of tools Synra advertises — list_tables, describe_table, query_table, execute_sql. That list is your confirmation it worked. If it fails, jump to troubleshooting.

Step 5 — Use It in a Conversation

  1. Open a new chat
  2. Click the + icon in the message composer
  3. Choose MoreDeveloper mode (or pick your app directly, depending on build)
  4. Select your Synra connector

Now ask something:

  • "List the tables in my database."
  • "What columns are in the users table?"
  • "How many orders were placed yesterday?"

ChatGPT will call the right tool, run the query, and answer from real results.

If you change your connection later (add tables, swap databases), open the connector in Settings and click Refresh so ChatGPT re-pulls the tool list and schema.

Security: What's Actually Happening

  • Read-only by default. Synra blocks every write statement at the gateway — INSERT, UPDATE, DELETE, DROP, ALTER, TRUNCATE. Even if ChatGPT generates a write, it's rejected before it reaches your database.
  • Credentials never reach ChatGPT. ChatGPT only ever sees the endpoint URL. Your actual database password stays encrypted in Synra.
  • Every query is logged. Synra's audit log shows every statement ChatGPT ran, when, and how long it took.
  • The token rotates. If the endpoint URL leaks, regenerate it from the dashboard and the old one dies instantly.

A note on data flow: when ChatGPT uses the connector, query results are sent back to OpenAI's model so it can reason over them — exactly as if you'd pasted them into the chat yourself. If that's not acceptable for a given dataset, point Synra at a sanitized staging copy or a read replica instead of production.

Troubleshooting

No Developer mode toggle. Plan or region restriction. Custom MCP connectors need a paid plan on the web app, and availability has changed during the beta.

"This MCP server doesn't implement our specification." Almost always means Developer mode isn't actually enabled, or you're on the deep-research connector path (which historically required specific search/fetch tools). Full Developer-mode connectors support arbitrary tools — make sure the toggle is on and you created the connector under Developer mode.

Connector created but tools are greyed out / "no tools found." This is a known ChatGPT beta quirk that's bitten Plus users specifically. First, click Refresh on the connector. If that doesn't help, confirm the connection is healthy in Synra (Connections → your DB → Test connection). You can also verify the endpoint independently — see the MCP troubleshooting guide, which covers checking tool discovery with the MCP Inspector.

Connection fails immediately. Recopy the endpoint URL from Synra's Endpoints tab — a truncated or stale URL is the usual cause.

For a full symptom-by-symptom checklist that applies to ChatGPT, Claude, and Cursor, see MCP troubleshooting: when your client can't see the tools.

Frequently Asked Questions

Do I need a paid ChatGPT plan? For custom MCP connectors, yes — Developer mode is a paid-plan feature on the web app. The one-click apps in ChatGPT's directory are broader, but a custom database connector like Synra goes through Developer mode.

Which databases work? PostgreSQL, MySQL, Microsoft SQL Server, and Supabase, plus any Postgres-compatible host like Neon, Railway, AWS RDS, Render, or DigitalOcean.

Does the same Synra URL work in Claude and Cursor too? Yes. One endpoint, every MCP client. See Connect Claude to PostgreSQL and Connect Cursor to PostgreSQL.

Can ChatGPT modify my data? No, not with the default settings. Synra enforces read-only at the gateway regardless of what the model tries.

Why "No authentication" instead of OAuth? Synra's authorization lives in the endpoint URL token, so there's nothing for ChatGPT to log into. That keeps setup to a single paste. Keep the URL secret and rotate it if exposed.


That's the whole flow. The hardest part is finding the Developer mode toggle — the actual connection is one pasted URL.

Ready to try it? The free tier at mcpserver.design covers one database connection — enough to see whether querying your data through ChatGPT fits how you work.

Related guides: