Summary
Memori already supports BYODB through user-provided databases such as PostgreSQL, MySQL, CockroachDB, OceanBase, and TiDB.
This proposal is to add a small database provisioning layer for BYODB, starting with providers such as TiDB Cloud Zero and Neon Launchpad.
The goal is to make the BYODB setup flow easier for developers and AI agents: Memori can provision a database, receive a connection string, initialize the existing schema, and return a ready-to-use Memori instance.
This should not introduce new storage drivers. Provisioning should only create or retrieve a database connection; storage should continue using the existing MySQL/TiDB and PostgreSQL driver paths.
Motivation
BYODB is flexible, but today users still need to manually create a database, copy the connection string, configure TLS if needed, and then initialize Memori.
For agent and developer-tool workflows, it would be useful if Memori could handle this setup step directly while still keeping the BYODB architecture intact.
Examples of provider candidates:
Both can return normal SQL connection strings, which means Memori can reuse its existing storage drivers after provisioning.
Proposed API
For Python:
mem = Memori.provision(provider="tidb-zero", build=True)
For CLI:
memori provision --provider tidb-zero
memori provision --provider neon-launchpad
A provider could return:
ProvisionResult(
provider="tidb-zero",
family="mysql",
dsn="...",
connect_args={...},
claim_url="...",
expires_at="...",
metadata={...},
)
Memori would then pass the DSN to the existing storage layer and run the normal schema build path.
Important details
- Keep provisioning separate from storage drivers.
- Cache provisioned results locally to avoid creating duplicate databases on reruns.
- Redact credentials in logs and CLI output.
- Surface
claim_url and expires_at clearly when the provider returns them.
- Keep provider implementations isolated because provider APIs may evolve.
Non-goals
- This is not a replacement for Memori's hosted storage service.
- This is not a new TiDB Zero or Neon-specific storage driver.
- TiDB native vector/HNSW support should be handled separately as a future storage optimization.
- Authenticated cloud providers such as CockroachDB, Supabase, or Atlas can remain normal BYODB targets unless there is demand for provider-specific provisioning later.
Summary
Memori already supports BYODB through user-provided databases such as PostgreSQL, MySQL, CockroachDB, OceanBase, and TiDB.
This proposal is to add a small database provisioning layer for BYODB, starting with providers such as TiDB Cloud Zero and Neon Launchpad.
The goal is to make the BYODB setup flow easier for developers and AI agents: Memori can provision a database, receive a connection string, initialize the existing schema, and return a ready-to-use
Memoriinstance.This should not introduce new storage drivers. Provisioning should only create or retrieve a database connection; storage should continue using the existing MySQL/TiDB and PostgreSQL driver paths.
Motivation
BYODB is flexible, but today users still need to manually create a database, copy the connection string, configure TLS if needed, and then initialize Memori.
For agent and developer-tool workflows, it would be useful if Memori could handle this setup step directly while still keeping the BYODB architecture intact.
Examples of provider candidates:
Both can return normal SQL connection strings, which means Memori can reuse its existing storage drivers after provisioning.
Proposed API
For Python:
For CLI:
A provider could return:
Memori would then pass the DSN to the existing storage layer and run the normal schema build path.
Important details
claim_urlandexpires_atclearly when the provider returns them.Non-goals