Self-hosted · Open source ready · BYOK

The self-hosted
AI SQL engine.

Connect your database — PostgreSQL, MySQL, SQL Server, ClickHouse, and more — bring your own AI key, and ask questions in plain English. No SQL knowledge needed, and no data ever leaves your infrastructure.

Free tier included · No credit card · Self-hosted

Ottoch
How many orders were placed last month?
SELECT COUNT(*) AS order_count
FROM orders
WHERE created_at >= DATE_TRUNC('month', NOW() - INTERVAL '1 month')
  AND created_at < DATE_TRUNC('month', NOW());
3,847 orders were placed last month.
Ran in 0.12s · 1 row returned
100%
Self-hosted — your data and credentials never leave your infrastructure
7
Databases supported out of the box, from Postgres to Databricks
<60s
From docker compose up to your first answer
0
Non-SELECT queries ever executed — hard-blocked before the DB sees them
⚡ 60-SECOND SETUP From zero to your first query in under a minute
STEP 1 · ~10s
Compose up
docker compose up -d

Starts the app + Redis. See deploy guide for the compose file.

STEP 2 · ~5s
Get credentials
docker compose logs app

Admin username & password printed on first boot.

STEP 3 · ~20s
Add your AI key

Settings → LLM Config. Paste your OpenAI, Anthropic, or Gemini key.

STEP 4 · ~30s
Connect & ask

Add a database connection, activate tables, and ask your first question.

Three steps from zero to answers

No complex setup. No managed cloud. One Docker command and you're querying in minutes.

STEP 01
Connect your database

Provide your host, credentials, and the tables you want to expose. Credentials are encrypted at rest. Only you can decrypt them.

STEP 02
Ask in plain English

Type your question like you'd ask a colleague. Ottoch builds a schema-aware prompt and sends it to your chosen AI provider.

STEP 03
Get a real answer

The AI generates SQL, we validate it's a pure SELECT, execute it safely on your database, and translate the result back to plain English.

Built for production, not demos

Every design decision is about safety and practicality. Not just making a flashy prototype.

🔒
Read-only safe

All queries are SELECT only. Hard blocked at the code level before execution — not just trusted from the AI output.

🔑
Bring your own AI key

Use OpenAI, Anthropic, Gemini, or any compatible API. You control the cost. Keys are encrypted and never leave your server.

🐳
Self-hosted

One Docker command. Your data never leaves your infrastructure. No SaaS pricing, no vendor lock-in, no call-home.

🎯
Schema-aware

The AI only sees the tables you activate. Nothing else is exposed. Fine-grained control over what the model can query.

🔄
Smart retry

If a query fails, the AI corrects itself — passing the error back to the model and trying again, up to 3 times before giving up cleanly.

💬
Session history

Named chat sessions per database connection. Your questions and SQL are saved so you can review, share, or re-run them later.

👥
Multi-user & LDAP

Enterprise edition ships with RBAC (Admin, Developer, Guest roles) and LDAP/Active Directory integration — users are provisioned automatically on first login.

🐘 PostgreSQL 🐬 MySQL 🐬 MariaDB 🪟 SQL Server ⚡ ClickHouse ◈ Databricks ☁ Redshift

Up in two commands

Docker Compose starts the app and Redis together. Data persists in a named volume.

docker compose up -d

Then open http://localhost and check the logs for your login credentials:

docker compose logs app
Full deployment guide →

Ready to connect your database?

Free tier included. No credit card. Runs on your own server.

Deploy free → View enterprise pricing