v0.4 · public beta

Ask your database in plain English. No SQL. No queue.

PlainQuery turns Postgres, MySQL, and SQLite into something anyone on your team can talk to. Connect once, then ask questions from ChatGPT, Cursor, or VS Code — answers come back as structured data.

25 queries/day, free forever no credit card open-source MCP server
Works with
PostgreSQLMySQLSQLiteChatGPTCursorVS CodeClaude DesktopHTTP MCPPostgreSQLMySQLSQLiteChatGPTCursorVS CodeClaude DesktopHTTP MCP
how it works

From database to answer in three calm steps.

No new dialect, no new IDE. Connect, pair a client you already use, and start asking.

01

Connect a database

Use guided Postgres setup, or paste a connection string. PlainQuery validates it, blocks unsafe URLs, and stores the credential encrypted.

02

Pair an MCP client

Guided setup for ChatGPT, Cursor, VS Code, Claude Desktop, or any HTTP MCP client. Drop in an API key — done.

03

Ask in plain English

Revenue, retention, schema, churn — ask in a sentence. Read-only SQL is generated, validated, executed, and returned as a structured answer.

the ask_database tool

One MCP tool. Three honest examples.

Below are real prompts your team would type into Cursor or ChatGPT. PlainQuery introspects the schema, generates SQL, validates it read-only, runs it under a row-cap, and returns a structured answer.

you ask

Which five customers spent the most in the last 30 days?

PlainQuery joined orders and customers, filtered by created_at, summed totals, and ranked descending. The query was validated read-only before it ran.

generated.sql
validated · read-only
SELECT c.name, SUM(o.total) AS revenue
FROM customers c
JOIN orders o ON o.customer_id = c.id
WHERE o.created_at >= NOW() - INTERVAL '30 days'
GROUP BY c.name
ORDER BY revenue DESC
LIMIT 5;
result
5 rows · capped at 100
CustomerRevenueOrders
Acme Health$48,920142
Northstar Labs$37,440108
BrightCart Co.$29,78094
Lumen Studio$22,11471
Verdant Foods$18,90263
ask_database · MCP tool

Bad SQL? PlainQuery feeds the error back to the model and retries up to three times before giving up — so your teammates see a sentence, not a stack trace.

Try a real query
built for trust

A friendly product surface on top of a guarded query engine.

PlainQuery is designed for self-serve access without turning your database into a free-for-all. Every layer between the question and the data is auditable.

See the validation pipeline
  • Read-only by default

    Every generated statement is parsed and rejected if it tries to write, drop, or call a dangerous function.

  • Credentials encrypted at rest

    Database URLs and LLM keys are sealed with Fernet keys you control. Rotate any time without downtime.

  • Audited, capped, observable

    A 100-row cap, 30-second timeout, and full query history per user — visible in the dashboard.

  • Threat model

    “The agent should never be the reason a write happens. Ever.

    Six layers of validation block DML/DDL, dangerous functions, multi-statement injection, and SSRF on user-supplied URLs.

pricing

Start free. Upgrade when it sticks.

No card on file. No drip-fed quotas. Move to Pro the day PlainQuery becomes a habit — not before.

Full pricing details
00 · start

Free

$0forever, no card

Connect one database, plug in an MCP client, and see whether plain-English querying clicks for your team.

  • 25 database questions per day
  • 1 active API key
  • 1 active database
  • ChatGPT, Cursor, VS Code, HTTP MCP setup
Start free
Recommended
01 · scale

Pro

500/ daily questions

Higher daily limits and additional keys — for the moment PlainQuery becomes part of your workflow, not a curiosity.

  • 500 database questions per day
  • 5 active API keys
  • 1 active database
  • Upgrade through Stripe after setup
Start free

the ask

Stop waiting for a report.
Ask the question now.

Connect one database, configure your AI client, and let your team start exploring answers in plain English. The free plan ships with everything you need to test it on real data.