SQLite databases on the edge,
built for AI agents.
One isolated SQLite database per tenant. Bearer-token API. Globally distributed, scales with you.
// npm i @persql/sdk
import { PerSQL } from "@persql/sdk";
const db = new PerSQL({ token: process.env.PERSQL_TOKEN! })
.database("acme/orders");
const { data } = await db.query<{ id: number; email: string }>(
"SELECT id, email FROM customers WHERE id = ?",
[42]
); # npm i -g @persql/cli
$ persql login
✓ Logged in as you@acme.com
$ persql db create orders --ns acme
✓ Created acme/orders (auto)
$ persql db query acme/orders "select count(*) from customers" Everything you need in one platform
Not just a database. Vectors, blobs, realtime, edge endpoints, custom domains, an MCP server, and an AI assistant — all on the same isolated SQLite per tenant.
Isolated SQLite per tenant
One Durable Object with embedded SQLite per database. A noisy tenant can never affect another tenant's data or latency.
Bearer-token API for agents
Per-token rate limits, table allowlists, idempotency keys, batched transactions. Built for Claude, ChatGPT, Cursor.
MCP server
Drop-in Model Context Protocol endpoint. Tools for list_databases, query, batch, list_tables, describe_table.
Vector search
Hybrid SQL + vectors via Cloudflare Vectorize, isolated per database. No extra service to wire up.
Blob storage
Per-database R2-backed object storage. PUT/GET/LIST/DELETE under your own keys, with signed URLs.
LISTEN/NOTIFY realtime
Subscribe to row-level changes over WebSocket. Push updates to dashboards and agents without polling.
Public HTTP endpoints
Turn a parameterized SQL statement into a /p/:ns/:db/:slug endpoint with validation, auth, and CORS.
Custom domains
CNAME api.acme.com at PerSQL. Automatic TLS via Cloudflare for SaaS. Your customers see your brand.
Backups, archives, branching
Daily R2 archives, point-in-time snapshots, fork prod to dev in seconds for testing migrations.
AI in the console
Natural-language → SQL, query plan explanation, index advisor, schema diff. The agent path is first-class.
Edge-native, globally distributed
Auth and queries served from the closest region with sub-5ms cache hits. One platform, every continent.
Drizzle, Kysely, raw SQL
Use the ORM you already know. persql-codegen emits a Drizzle schema from a live database.
From SQL to AI agents in one stack
Reach for the surface that fits the task: a web console for humans, an SDK for your app, a CLI for your terminal, an MCP server for your agent, public HTTP endpoints for everyone else.