pumaDB pumaDB vs Supabase

Agent memory without a backend project.

pumaDB and Supabase both store application data, but they are built for different jobs. pumaDB is a small hosted memory surface for agents and server-side apps. Supabase is a full Postgres development platform for building production backends.

pumaDB

Hosted JSON memory API

vs
Supabase

Postgres backend platform

Choose pumaDB when Supabase is more database than the job needs. Choose Supabase when you are building the application backend itself.

Supabase is where your application lives. pumaDB is where your agent remembers.

Use the tool that matches the size of the job.

Choose pumaDB for

  • Hosted MCP memory for agents without a database project
  • Small server-side JSON records such as preferences, notes, task state, and handoff context
  • Simple REST calls from Workers, API routes, CLIs, and scripts
  • Reviewable memory with row versions, restore, and explicit cleanup
  • Typed safe memory for resources, code, Markdown, commands, and config

Choose Supabase for

  • Production apps built around Postgres tables, SQL, schemas, indexes, and extensions
  • User authentication, authorization, and Row Level Security policies
  • Client-facing applications that need direct SDK access under security rules
  • File storage, Realtime subscriptions, Edge Functions, and database webhooks
  • AI apps that need pgvector, embeddings, and vector search inside Postgres

Where they differ.

Area pumaDB Supabase
Primary job A small hosted JSON database for agent memory and lightweight server-side app state. A full Postgres development platform for building and operating app backends.
Data model Named JSON tables. Current account limits are 20 tables, 1,000 rows per table, 25 MB per account, and 64 KB per row. Postgres databases with relational schemas, SQL, constraints, indexes, extensions, generated APIs, and migration workflows.
Query behavior CRUD, simple equality filters, sorting, counting, batch writes, and short-lived viewer links for larger results. Full SQL through Postgres, generated REST and GraphQL APIs, client libraries, joins, policies, indexes, and advanced database queries.
Agent interface Hosted Streamable HTTP MCP, local stdio MCP, REST API, and CLI are built into the product surface. Supabase is primarily an app backend platform. Agents can call it through SDKs, generated APIs, database tools, or custom MCP integrations.
Client-side apps API keys are server-side secrets. Browser apps should call your own backend or use an MCP client with OAuth. Designed for direct browser and mobile app access when paired with Supabase Auth and Row Level Security policies.
AI and vectors Stores memory as explicit JSON records. It does not run vector search, embeddings, or LLM synthesis. Supports AI workloads through Postgres extensions such as pgvector and Supabase's vector tooling.
Operations Hosted on Cloudflare with deliberately small limits and a narrow API surface. Runs as a managed backend project with database, auth, storage, functions, realtime services, logs, and project configuration.
Recovery model Every update and delete archives the previous row. The last 10 versions are kept for 30 days and can be restored. Relies on database operations practices such as migrations, backups, point-in-time recovery options, audit tables, or application-level history.

A practical way to think about the split.

pumaDB is the memory primitive

It is useful when an agent needs durable state that stays explicit: preferences, task state, project facts, resource references, code snippets, commands, config examples, and small records your own app already understands.

Supabase is the app backend

It is useful when the job needs relational modeling, application users, Row Level Security, Realtime, Storage, Edge Functions, SQL, or vector search as part of a broader product backend.

What this comparison is based on.

Product pages change over time. This page compares pumaDB's current documented behavior in this codebase with Supabase's public project documentation.

Add hosted memory without standing up a database.

Connect pumaDB over hosted MCP, or call the REST API from trusted server-side code.