Schema-based memory for AI agents

Let agents read and write memory in natural language while xmemory stores validated, queryable state underneath.

Why xmemory is different

Natural language on top. Structured state underneath.

Text memory

Stores notes, summaries, and recalled context.

xmemory

Stores schema-based state behind a natural-language interface.

Facts can be duplicated or drift over time
Facts are typed, linked, and deduplicated
Relationships are implied, not explicit
Relationships are explicit
Updates often mean appending more text
Updates change the underlying state
Reliability depends on reconstructing meaning later
Queries return consistent answers across workflows and systems
Example

User likes red flowers.
Amy is now Kevin’s boss.
Vacation from March 11 to 15.

Example

Preference: flower_color = red
Relationship: Amy manages Kevin
Plan: vacation_start = March 11, vacation_end = March 15

Result: agents can write and query memory naturally, without relying on text reconstruction for correctness.

How xmemory stays correct

01

Start with what you have

Use an existing system of record, describe what should be remembered, or let xmemory generate the schema.

02

Write in natural language

Agents store and update memory in plain language while xmemory maps it to structured state.

03

Read back trusted state

Query memory naturally and get consistent, deduplicated state across tasks, workflows, and systems.

Key use cases

90% accuracy is not enough for 90% of workflows

Shared working memory for agents

Shared, durable execution state for coordinating long-running agents across tasks and workflows.

Persistent user and workflow memory Demo

Keep user facts, preferences, and workflow context as durable memory across chats and systems.

Integrate into your stack

Easy setup

Dear , please read the integration documentation and integrate xmemory into my project.

I want to use xmemory whenever they need to store information related to their context, execution steps, or tool usage. They should create memory schemas dynamically when needed for a task, or use schemas that I will explicitly define.

Our blog

View all posts →

FAQ

How is xmemory different from MCP over Postgres?

xmemory is not just a database exposed through MCP. It is a schema-based memory layer that lets agents read and write in natural language while xmemory handles structured extraction, updates, relations, and deduplication underneath. MCP can expose tools. xmemory is meant to make the memory behavior itself agent-native and reliable. For the deeper architectural argument, see Should Agents Adapt to Systems - or Should Systems Adapt to Agents? .

What if I don’t have a schema yet?

You do not need to hand-design a schema first. You can start from an existing system, describe the memory you need in plain language, or let xmemory generate a schema for the workflow. The goal is to make structured memory available even when you know what should be remembered but do not want to model everything from scratch. See How xmemory works for the full flow.

Why not just use text memory or vector memory?

Text and vector memory are useful for recall. xmemory is built for reliable state. If memory is stored mainly as text, every read becomes another act of interpretation. xmemory’s approach is to keep memory structured underneath, so facts can be updated explicitly, relationships stay clear, and answers do not depend on reconstructing meaning from narrative history every time. For the fuller argument, read Schema as the Core of Reliability in AI Memory .

Can xmemory work with my existing systems?

Yes. xmemory is designed to fit into existing stacks. You can bring structure from an existing system of record, then integrate through MCP, API, Python, or TypeScript depending on how your agents and workflows already run. The docs also include examples for frameworks like LangChain, Pydantic AI, Mastra, Google ADK, and n8n. You can jump straight to the integration guides in How xmemory works .

Try it out

Tell us about your workflow and we’ll help you choose the right integration path.