SQLite

Lightweight in-process SQLite emulator with a better-sqlite3-style synchronous API.

KeyValue
ProtocolEmbedded (in-process)
Sizesmall

Note: SQLite is embedded (in-process), not a network service. Unlike the other emulators it does not listen on a port and has no parlel-bridge hostname — there is nothing to connect to over the network. It is exercised inside a sandbox directly by your app (or via MCP), as an in-process file DB.

Supported SQL

StatementNotes
CREATE TABLE / DROP TABLEDDL
INSERTRow insert
SELECT / SELECT ... WHEREQuery
UPDATEUpdate rows
DELETEDelete rows
Prepared statements.prepare(sql).all() / .run()

Usage Examples

SQLite runs in-process with a better-sqlite3-style synchronous API. Inside a sandbox, your app uses it directly as an embedded file DB — there is no network connection to establish.

import Database from "better-sqlite3";

const db = new Database(":memory:");
db.exec("CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT)");

const insert = db.prepare("INSERT INTO users (name) VALUES (?)");
insert.run("Ada");

const rows = db.prepare("SELECT * FROM users WHERE name = ?").all("Ada");

Surface coverage

This emulator faithfully replicates the API surface most application code and agents exercise. Anything below the supported lines is either an intentional design choice for a fast, zero-cost local emulator (✓ By design) or a candidate for a future release (⟳ Roadmap) — never a silent inaccuracy.

Legend: ✅ fully supported · ◐ accepted (stored, not strictly enforced) · ✓ by design · ⟳ on the roadmap.

FeatureStatus
CRUD + prepared statementsSupported
Network access (port / sandbox)Not available — in-process only
JOINs / transactions / advanced SQLSimplified