MemMachine Memory Layer
Persistent, queryable memory for AI agents and LLM applications across sessions.
- Source repo
- MemMachine/MemMachine
- Stars
- ★ 3.1k
- Last updated
- 3d ago
- License
- Apache-2.0
- Primary language
- Python
- FA score
- Insufficient evidence
At a glance
- How it runs
- Works with
- Universal · cross-platformOpenAI API · Claude API
- Cost
- Free tier plus a paid hosted plan
- Setup effort
- Medium · a few setup steps
- You'll need
- Typical use
- A sales team using a CRM Agent needs to recall a client’s prior interactions and deal stage during a later session.
- Not a fit if
- Developers who want a pip install without running a MemMachine Server
- Teams unwilling to operate both a graph database and SQL storage
- Enterprises needing documented auth, tenant isolation, and backups
- Source review
- Insufficient evidence 8 safety controls not found
What does this agent do, and when should you use it?
MemMachine is an open-source long-term memory layer for AI agents and LLM-powered applications that need state beyond a single chat session. It separates Working Memory, graph-backed Episodic Memory, and SQL-backed Profile Memory. Applications can connect through a Python SDK, REST API, TypeScript SDK, or a native MCP server, with local, Docker self-hosted, and managed-service paths described. Its MCP entry points are memmachine-mcp-stdio and memmachine-mcp-http for MCP-compatible clients such as Claude Desktop and Cursor. Adoption requires a running MemMachine Server and persistence infrastructure spanning a graph database and SQL storage.
An application connects to a running MemMachine Server, then uses MemMachineClient.get_or_create_project(org_id, project_id) to obtain a project. It creates a user-session memory object with project.memory(group_id, agent_id, user_id, session_id), stores content with memory.add(content, metadata=...), and retrieves it with memory.search(query). The example reads recalled text from results.content.episodic_memory.long_term_memory.episodes[0].content. MemMachine persists conversational Episodic Memory in a graph database and Profile Memory in SQL, and exposes MCP server processes through memmachine-mcp-stdio or memmachine-mcp-http.
- A sales team using a CRM Agent needs to recall a client’s prior interactions and deal stage during a later session.
- A healthcare navigation assistant needs to retain medical history and follow treatment progress over time.
- A personal-finance advisor needs to preserve portfolio preferences and risk tolerance between consultations.
- A writing assistant needs to retain a user’s style guide and terminology across separate writing sessions.
- A team using LangChain, LangGraph, CrewAI, LlamaIndex, AWS Strands, n8n, Dify, or FastGPT needs a persistent memory integration.
How do you install or deploy this agent?
Start a MemMachine Server first; it is a prerequisite for the client. Then run:
pip install memmachine-clientLocal server startup, Docker setup, authentication, and database configuration are not provided as copyable commands. The project describes local, Docker self-hosted, and managed-service options; the managed platform offers a free account, but credential configuration is not specified.
How do you use this agent?
Point the client base_url at the running service, for example http://localhost:8080, then call get_or_create_project, project.memory, memory.add, and memory.search. The supplied Python quick-start import line contains a duplicated import and is not executable as written; no corrected copyable import is provided, so confirm the import for the installed memmachine-client version before adoption. For MCP clients, run memmachine-mcp-stdio, or run memmachine-mcp-http for web clients.
What are this agent's strengths and limitations?
- It distinguishes working memory, cross-session episodic memory, and user-profile memory instead of treating all memory as one session transcript.
- The documented architecture assigns episodic memory to a graph database and profile facts to SQL storage.
- It exposes the same memory layer through Python, REST, TypeScript, and MCP interfaces.
- It names integrations for LangChain, LangGraph, CrewAI, LlamaIndex, AWS Strands, n8n, Dify, and FastGPT.
- The client requires a running MemMachine Server; installing the Python package alone is insufficient.
- Its persistence architecture involves both a graph database and SQL storage, adding operational and data-governance work.
- The supplied Quick Start Python snippet has a syntactically invalid import line and cannot be copied verbatim.
- Authentication, authorization, tenant isolation, backups, migration, and failure-recovery behavior are not documented.
How does this agent compare with similar options?
Key facts side by side with the most closely related agents.
| Agent | Source review | Form / cost | Stars | Updated | Language | Full support on |
|---|---|---|---|---|---|---|
| MemMachine Memory Layer This agent | Insufficient evidence | Library / SDKFreemium | ★ 3.1k | 3d ago | Python | OpenAI API · Claude API |
| MCP Memory Service | 68 · Some gaps | MCP serverFree | ★ 2.1k | 1d ago | Python | ChatGPT · Codex · Claude Code · Claude.ai |
| mcp-agent | 53 · Major gaps | FrameworkFree + model costs | ★ 8.6k | 9mo ago | Python | Claude.ai · OpenAI API · Claude API |
| Hindsight | 46 · Major gaps | Self-hosted serviceFreemium | ★ 59k | today | Python | OpenAI API · Claude API |
How does FollowAgents rate this agent?
Why each dimension lost points
Insufficient evidence: The repository does not provide explicit information on permission model, user confirmation, data flow transparency, sensitive data handling, dependency security, external effects, rollback, or source attribution. All criteria scored 0 due to lack of evidence.
Insufficient evidence: No explicit evidence for self-consistency, dependency availability, or failure messages. All criteria scored 0 due to lack of evidence.
Insufficient evidence: No explicit evidence for audience, capability boundaries, trigger precision, or environment fit. All criteria scored 0 due to lack of evidence.
Insufficient evidence: No explicit evidence for information architecture, install notes, naming stability, examples/FAQ, known limitations, license, versioning/changelog, or maintenance responsibility. All criteria scored 0 due to lack of evidence.
Insufficient evidence: No explicit evidence for output usability, marginal value, or cost-benefit. All criteria scored 0 due to lack of evidence.
Insufficient evidence: No explicit evidence for claim traceability, cross-source corroboration, or fact/inference separation. All criteria scored 0 due to lack of evidence.
- Not found in source: least-privilege scopingGrant only what the task needs: a dedicated account or read-only token, scoped to specific directories and repos.
- Not found in source: confirmation before actingTurn on (or add) a confirmation step before it acts, and try it in a sandbox or test environment before real data.
- Not found in source: data-flow disclosureWatch which external services it contacts (proxy or firewall logs) and keep sensitive data out until you know where it goes.
- Not found in source: sensitive-data handlingUse dedicated, low-privilege, revocable API keys — never production credentials — and keep secrets out of logs.
- Not found in source: dependency securityPin versions and run a dependency audit (npm audit, pip-audit) before installing; prefer running it in a container.
- Not found in source: disclosed external effectsEstablish which external systems it writes to, sends to or changes, and verify with test accounts or repos before production.
- Not found in source: rollback or recovery pathBack up first, or work on a git branch or snapshot, so its changes can be undone.
- Not found in source: verifiable attributionInstall from the official repo or registry and check the publisher and URL to avoid look-alike packages.
- The repository only provides README, LICENSE, SECURITY.md, pyproject.toml, and some CI workflows, without source code, tests, or detailed documentation, making a meaningful static assessment impossible.
- All criteria scored 0 due to insufficient evidence, not indicating defects but lack of assessable evidence.
- It is recommended to obtain the full source code and documentation before a deeper evaluation.
Recent releases
Latest entries from the project's GitHub Releases. Notes are quoted from upstream as written, not rewritten or tested by FollowAgents.
-
Release notes excerpt
What's Changed * feat: add BEAM benchmark support by @junttang in https://github.com/MemMachine/MemMachine/pull/1317 * Docs: Removing Playground References by @SarahScargall in https://github.com/MemMachine/MemMachine/pull/1413 * Chore: Automate Dependabot uv.lock repair and add scheduled CVE auto-fix workflow by @sscargal with @Copilot in https://github.com/MemMachine/MemMachine/pull/1414 * feat(language_model): add LiteLLM provider for 100+ backings by @RheagalFire in https://github.com/MemMachine/MemMachine/pull/1386 …View on GitHub ↗ -
Release notes excerpt
What's Changed * docs: clarify filter prefix requirements by @haosenwang1018 in https://github.com/MemMachine/MemMachine/pull/1352 * docs(common): add package readme metadata by @haosenwang1018 in https://github.com/MemMachine/MemMachine/pull/1338 * docs(client): prefer released pip install instructions by @haosenwang1018 in https://github.com/MemMachine/MemMachine/pull/1335 * fix(ts-client): include readme in published package by @haosenwang1018 in https://github.com/MemMachine/MemMachine/pull/1340 …View on GitHub ↗ -
Release notes excerpt
What's Changed * Embedded VectorStore Implementation(s) by @edwinyyyu in https://github.com/MemMachine/MemMachine/pull/1292 * docs: regenerate openapi.json by @github-actions[bot] in https://github.com/MemMachine/MemMachine/pull/1385 * Fix Installation Test CI by @edwinyyyu in https://github.com/MemMachine/MemMachine/pull/1389 * update legacy LoCoMo eval scripts to current MemMachine API by @1saac-k in https://github.com/MemMachine/MemMachine/pull/1272 …View on GitHub ↗