PerSQL

SQLite databases on the edge, built for AI agents.

One isolated SQLite database per tenant. Bearer-token API. Globally distributed, scales with you.

agent.ts SDK
// 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]
);
terminal CLI
# 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.

Console SDK CLI MCP REST Endpoints