{
  "data": {
    "a": {
      "slug": "graphiti",
      "name": "Graphiti",
      "vendor": "Zep",
      "vendorUrl": "https://www.getzep.com",
      "kind": "framework",
      "category": "agent-memory",
      "summary": "Open-source Python framework from Zep that builds a temporal knowledge graph from chat messages, text and JSON.",
      "url": "https://www.anchorterminal.com/tools/graphiti",
      "markdownUrl": "https://www.anchorterminal.com/tools/graphiti.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/graphiti.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/graphiti.json",
      "repo": "https://github.com/getzep/graphiti",
      "license": "Apache-2.0",
      "transports": [
        "streamable-http",
        "stdio"
      ],
      "packages": [
        {
          "registry": "pypi",
          "name": "graphiti-core"
        }
      ],
      "auth": "none",
      "authNotes": "Runs on your own machine. You supply an LLM key (OPENAI_API_KEY by default) and database settings such as FALKORDB_URI or NEO4J_URI, NEO4J_USER and NEO4J_PASSWORD.",
      "pricing": "free",
      "pricingNotes": "Free under Apache-2.0. You pay for the LLM and embedding calls it makes on every ingest and for running the graph database (https://github.com/getzep/graphiti). Zep sells a hosted memory service from the same team (https://www.getzep.com/pricing/).",
      "priceSummary": "Free · OSS",
      "where": "library",
      "x402": {
        "level": "no",
        "endpoints": []
      },
      "toolCount": 13,
      "popularity": {
        "githubStars": 29000,
        "npmWeekly": null,
        "pypiWeekly": 151251,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://help.getzep.com/graphiti/getting-started/overview",
      "llmsTxt": "https://help.getzep.com/llms.txt",
      "capabilities": [
        "memory.store",
        "memory.search",
        "memory.graph",
        "memory.delete"
      ],
      "tags": [
        "framework",
        "open-source",
        "self-hosted",
        "local",
        "python",
        "mcp",
        "llms-txt"
      ],
      "lastRelease": "2026-09-08",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 53.3,
        "grade": "D",
        "agentReady": false,
        "rank": 632,
        "ranked": true,
        "rankOf": 842,
        "categoryRank": 7,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 51,
          "maintenance": 65,
          "payments": 60,
          "reliability": 50,
          "schema": 71,
          "security": 23,
          "transparency": 71
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "Apache-2.0, with FalkorDB, Neo4j or Amazon Neptune as the store. Every add runs LLM extraction, so ingestion costs tokens and time.",
        "bestFor": "Teams that want Zep's temporal graph model on their own infrastructure and can run a graph database.",
        "strengths": [
          "Apache-2.0, with FalkorDB, Neo4j or Amazon Neptune as the store",
          "13-tool MCP server over streamable HTTP or stdio, with a Docker Compose file",
          "Works with OpenAI, Anthropic, Gemini, Groq or a local OpenAI-compatible model",
          "Telemetry documented, content-free by its own statement, and off with one environment variable",
          "Three PyPI releases between 27 July and 8 September 2026"
        ],
        "weaknesses": [
          "Every add runs LLM extraction, so ingestion costs tokens and time",
          "The MCP HTTP endpoint has no authentication, and no tool carries readOnlyHint or destructiveHint",
          "Still 0.x, and the last three PyPI releases have no GitHub release notes",
          "255 open issues, including a broken MCP Docker build reported in July 2026",
          "No official entry in the MCP registry"
        ],
        "agentNotes": [
          "Set OPENAI_API_KEY (or another provider's key) and MODEL_NAME before starting the MCP server",
          "Use search_memory_facts for facts and search_nodes for entities instead of reading whole episodes",
          "Never call clear_graph to fix one fact. Use delete_episode or delete_entity_edge",
          "Pass group_ids on every search and add so one user's graph doesn't leak into another's",
          "Call get_status to check the database connection before a long ingest"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 2.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 53.3
          }
        ],
        "editorialScores": {
          "ergonomics": 51,
          "maintenance": 65,
          "payments": 60,
          "reliability": 50,
          "schema": 71,
          "security": 23,
          "transparency": 78
        },
        "provenanceScore": 63
      },
      "connect": {
        "install": "pip install graphiti-core   # or: pip install graphiti-core[falkordb]",
        "claudeCode": "claude mcp add --transport http graphiti http://localhost:8000/mcp/",
        "config": {
          "mcpServers": {
            "graphiti": {
              "type": "http",
              "url": "http://localhost:8000/mcp/"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/memory.store",
        "tool": "https://letme.dev/graphiti"
      },
      "sameCompany": [
        "zep"
      ],
      "area": "agent-runtime",
      "provenance": {
        "legalEntity": "Zep Software, Inc.",
        "domain": "getzep.com",
        "domainRegistered": "2023-05-08",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/getzep/graphiti/releases",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "notes": [
          "A library and local server, so there's no hosted endpoint. Zep Software, Inc. owns the repository and publishes its docs on help.getzep.com."
        ],
        "score": 63
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/graphiti.json",
      "live": {
        "slug": "graphiti",
        "versions": [
          {
            "registry": "github",
            "name": "getzep/graphiti",
            "version": "v0.30.2",
            "released": "2026-09-08",
            "seenAt": "2026-10-08T16:14:56.048781026Z"
          },
          {
            "registry": "pypi",
            "name": "graphiti-core",
            "version": "0.30.2",
            "released": "2026-09-08",
            "seenAt": "2026-10-08T16:14:55.855085919Z"
          }
        ],
        "githubStars": 31558,
        "pypiWeekly": 156133,
        "securityTxt": {
          "url": "https://getzep.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:38:46.378005865Z"
        },
        "llmsTxt": {
          "url": "https://help.getzep.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-08T14:00:30.305602164Z"
        },
        "domain": {
          "domain": "getzep.com",
          "registered": "2023-05-08",
          "source": "https://rdap.verisign.com/com/v1/domain/getzep.com",
          "checkedAt": "2026-10-04T13:03:48.930668589Z"
        },
        "pages": [
          {
            "url": "https://www.getzep.com/pricing/",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-08T18:28:02.500956978Z",
            "changedAt": "2026-10-03T15:38:25.165141175Z",
            "fingerprint": "6ec6dab9051f"
          }
        ],
        "updatedAt": "2026-10-08T18:28:02.500956978Z"
      }
    },
    "answer": "Graphiti scores 53.3 (D) on agent readiness against LangMem's 47.9 (D), and leads in 4 of 7 scored categories. LangMem leads on agent ergonomics and security \u0026 auth.",
    "b": {
      "slug": "langmem",
      "name": "LangMem",
      "vendor": "LangChain",
      "vendorUrl": "https://www.langchain.com",
      "kind": "sdk",
      "category": "agent-memory",
      "summary": "LangMem is LangChain's open-source Python library for long-term agent memory. It extracts facts from conversations with an LLM, stores and searches them in a LangGraph store the owner runs, and includes two memory tools, message summarisation and prompt optimisation.",
      "url": "https://www.anchorterminal.com/tools/langmem",
      "markdownUrl": "https://www.anchorterminal.com/tools/langmem.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/langmem.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/langmem.json",
      "repo": "https://github.com/langchain-ai/langmem",
      "license": "MIT",
      "transports": [],
      "packages": [
        {
          "registry": "pypi",
          "name": "langmem"
        }
      ],
      "auth": "none",
      "authNotes": "The library has no account or key of its own. It runs in the owner's process and needs a key for the chosen LLM provider (the README uses `ANTHROPIC_API_KEY`) and, for semantic search, an embedding provider. Access to memories is whatever the owner's LangGraph store and namespace settings allow.",
      "pricing": "free",
      "pricingNotes": "Free under the MIT licence, with nothing to buy and no signup. The owner pays for the LLM calls that extract memories, the embedding calls behind search, and the database behind the store (https://github.com/langchain-ai/langmem).",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs or the source (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 1698,
        "npmWeekly": null,
        "pypiWeekly": 214379,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://langchain-ai.github.io/langmem/",
      "capabilities": [
        "memory.store",
        "memory.search",
        "memory.user",
        "memory.delete"
      ],
      "tags": [
        "sdk",
        "open-source",
        "self-hosted",
        "local",
        "python",
        "free",
        "langgraph",
        "pre-1.0"
      ],
      "lastRelease": "2025-10-27",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 47.9,
        "grade": "D",
        "agentReady": false,
        "rank": 734,
        "ranked": true,
        "rankOf": 842,
        "categoryRank": 9,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 66,
          "maintenance": 15,
          "payments": 60,
          "reliability": 32,
          "schema": 55,
          "security": 45,
          "transparency": 59
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "Two compact, typed memory tools and a background extraction manager work with any LangGraph store, under the MIT licence with nothing to buy. The newest PyPI release, 0.0.30, dates from 27 October 2025. The repository has no changelog, tags or test workflow, and 23 of 54 open issues have no reply.",
        "bestFor": "Teams already on LangGraph that want memory tools and background extraction over a store they run.",
        "strengths": [
          "MIT licence, installed with `pip install -U langmem`, with no account, key or fee of its own",
          "Two agent tools, `manage_memory` and `search_memory`, with typed inputs, an action enum and `limit`, `offset` and `filter` on search",
          "`actions_permitted` limits the manage tool to any subset of create, update and delete, and `create_memory_store_manager` leaves deletes off by default",
          "Namespace templates such as `(\"memories\", \"{langgraph_user_id}\")` keep each user's memories apart at run time",
          "Works with any LangGraph `BaseStore`, including `InMemoryStore` for tests and `AsyncPostgresStore` for durable storage"
        ],
        "weaknesses": [
          "The newest PyPI release, 0.0.30, is from 27 October 2025, and every commit to `src` on main is older than that",
          "No changelog, GitHub releases or tags, and versions are still 0.0.x",
          "The repository's two workflows deploy docs and publish to PyPI. Neither runs the tests",
          "54 open issues, 23 with no comment, and 19 open pull requests, the oldest from June 2025",
          "No guidance on memory poisoning or prompt injection found, and two open issues asking for it (May 2026) have no reply"
        ],
        "agentNotes": [
          "Pass a store with an embedding index (`index={\"dims\": 1536, \"embed\": \"openai:text-embedding-3-small\"}`), or `search_memory` cannot rank by meaning",
          "Use a database-backed store such as `AsyncPostgresStore` for anything that must survive a restart. `InMemoryStore` loses everything",
          "Put a per-user placeholder in the namespace and set it in `config[\"configurable\"]` on every call, or users share one memory space",
          "Send the memory `id` with `update` and `delete`, and never with `create`. A retried `create` writes a duplicate under a new UUID",
          "Run on Python 3.11 or later. `src/langmem/knowledge/extraction.py` uses `typing.NotRequired`, which Python 3.10 lacks"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 47.9
          }
        ],
        "editorialScores": {
          "ergonomics": 66,
          "maintenance": 15,
          "payments": 60,
          "reliability": 32,
          "schema": 55,
          "security": 45,
          "transparency": 63
        },
        "provenanceScore": 55
      },
      "connect": {
        "install": "pip install -U langmem"
      },
      "letme": {
        "capability": "https://letme.dev/memory.store",
        "tool": "https://letme.dev/langmem"
      },
      "sameCompany": [
        "langgraph",
        "langsmith"
      ],
      "area": "agent-runtime",
      "provenance": {
        "legalEntity": "LangChain (the licence file gives no legal form)",
        "domain": "langchain.com",
        "domainRegistered": "2019-12-03",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "A library the owner runs, with no hosted endpoint. The code is on github.com under the langchain-ai organisation and the docs are on langchain-ai.github.io/langmem.",
          "The LICENSE file reads Copyright (c) 2025 LangChain. PyPI metadata names no author.",
          "No terms or privacy document governs the library, so both fields are left out. The MIT licence is the only agreement.",
          "No changelog file, GitHub releases or tags exist in the repository. PyPI's release history is the only record of versions.",
          "www.langchain.com/.well-known/security.txt returns 404. The organisation's SECURITY.md points to two Intigriti disclosure programmes.",
          "RDAP for langchain.com gives a registration date of 2019-12-03."
        ],
        "score": 55
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/langmem.json"
    },
    "facts": [
      {
        "a": "Agent framework",
        "b": "SDK + MCP",
        "name": "Kind"
      },
      {
        "a": "Zep",
        "b": "LangChain",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "Streamable HTTP, stdio",
        "b": "",
        "name": "Transports"
      },
      {
        "a": "None",
        "b": "None",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Free",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Apache-2.0",
        "b": "MIT",
        "name": "Licence"
      },
      {
        "a": "13",
        "b": "none",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-09-08",
        "b": "2025-10-27",
        "name": "Last release"
      },
      {
        "a": "no document linked",
        "b": "no document linked",
        "name": "Terms last updated"
      },
      {
        "a": "no document linked",
        "b": "no document linked",
        "name": "Privacy policy last updated"
      },
      {
        "a": "",
        "b": "",
        "name": "Customer content may train models"
      },
      {
        "a": "",
        "b": "",
        "name": "Terms restrict automated access"
      },
      {
        "a": "",
        "b": "",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "",
        "b": "",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "",
        "b": "",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "29k stars, 151k PyPI/wk",
        "b": "1.7k stars, 214k PyPI/wk",
        "name": "Popularity"
      },
      {
        "a": "2.5/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Graphiti scores 53.3 (D) on agent readiness against LangMem's 47.9 (D), and leads in 4 of 7 scored categories. LangMem leads on agent ergonomics and security \u0026 auth.",
        "question": "Which is better for AI agents, Graphiti or LangMem?"
      },
      {
        "answer": "Yes. Graphiti is open source (Apache-2.0). LangMem is open source (MIT).",
        "question": "Are Graphiti and LangMem open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 50 against 32",
          "Schema \u0026 documentation, 71 against 55",
          "Maintenance \u0026 community, 65 against 15",
          "Transparency \u0026 trust, 71 against 59"
        ],
        "also": [
          "Runs on your own machine"
        ],
        "goodFor": "Teams that want Zep's temporal graph model on their own infrastructure and can run a graph database.",
        "slug": "graphiti",
        "watchFor": "Every add runs LLM extraction, so ingestion costs tokens and time"
      },
      {
        "aheadOn": [
          "Agent ergonomics, 66 against 51",
          "Security \u0026 auth, 45 against 23"
        ],
        "also": null,
        "goodFor": "Teams already on LangGraph that want memory tools and background extraction over a store they run.",
        "slug": "langmem",
        "watchFor": "The newest PyPI release, 0.0.30, is from 27 October 2025, and every commit to `src` on main is older than that"
      }
    ],
    "job": {
      "capability": "memory.store",
      "name": "Memory store"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/agentcore-memory-vs-graphiti.json",
        "title": "Amazon Bedrock AgentCore Memory vs Graphiti",
        "url": "https://www.anchorterminal.com/compare/agentcore-memory-vs-graphiti"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agentcore-memory-vs-langmem.json",
        "title": "Amazon Bedrock AgentCore Memory vs LangMem",
        "url": "https://www.anchorterminal.com/compare/agentcore-memory-vs-langmem"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cognee-vs-graphiti.json",
        "title": "Cognee vs Graphiti",
        "url": "https://www.anchorterminal.com/compare/cognee-vs-graphiti"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cognee-vs-langmem.json",
        "title": "Cognee vs LangMem",
        "url": "https://www.anchorterminal.com/compare/cognee-vs-langmem"
      },
      {
        "json": "https://www.anchorterminal.com/compare/graphiti-vs-hindsight.json",
        "title": "Graphiti vs Hindsight",
        "url": "https://www.anchorterminal.com/compare/graphiti-vs-hindsight"
      },
      {
        "json": "https://www.anchorterminal.com/compare/graphiti-vs-honcho.json",
        "title": "Graphiti vs Honcho",
        "url": "https://www.anchorterminal.com/compare/graphiti-vs-honcho"
      },
      {
        "json": "https://www.anchorterminal.com/compare/graphiti-vs-localghost.json",
        "title": "Graphiti vs LocalGhost",
        "url": "https://www.anchorterminal.com/compare/graphiti-vs-localghost"
      },
      {
        "json": "https://www.anchorterminal.com/compare/graphiti-vs-mem0.json",
        "title": "Graphiti vs Mem0 Platform + MCP",
        "url": "https://www.anchorterminal.com/compare/graphiti-vs-mem0"
      },
      {
        "json": "https://www.anchorterminal.com/compare/graphiti-vs-supermemory.json",
        "title": "Graphiti vs Supermemory API + MCP",
        "url": "https://www.anchorterminal.com/compare/graphiti-vs-supermemory"
      },
      {
        "json": "https://www.anchorterminal.com/compare/graphiti-vs-zep.json",
        "title": "Graphiti vs Zep",
        "url": "https://www.anchorterminal.com/compare/graphiti-vs-zep"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hindsight-vs-langmem.json",
        "title": "Hindsight vs LangMem",
        "url": "https://www.anchorterminal.com/compare/hindsight-vs-langmem"
      },
      {
        "json": "https://www.anchorterminal.com/compare/honcho-vs-langmem.json",
        "title": "Honcho vs LangMem",
        "url": "https://www.anchorterminal.com/compare/honcho-vs-langmem"
      },
      {
        "json": "https://www.anchorterminal.com/compare/langmem-vs-localghost.json",
        "title": "LangMem vs LocalGhost",
        "url": "https://www.anchorterminal.com/compare/langmem-vs-localghost"
      },
      {
        "json": "https://www.anchorterminal.com/compare/langmem-vs-mem0.json",
        "title": "LangMem vs Mem0 Platform + MCP",
        "url": "https://www.anchorterminal.com/compare/langmem-vs-mem0"
      },
      {
        "json": "https://www.anchorterminal.com/compare/langmem-vs-supermemory.json",
        "title": "LangMem vs Supermemory API + MCP",
        "url": "https://www.anchorterminal.com/compare/langmem-vs-supermemory"
      },
      {
        "json": "https://www.anchorterminal.com/compare/langmem-vs-zep.json",
        "title": "LangMem vs Zep",
        "url": "https://www.anchorterminal.com/compare/langmem-vs-zep"
      }
    ],
    "scores": [
      {
        "by": 18,
        "edge": "graphiti",
        "graphiti": 50,
        "key": "reliability",
        "langmem": 32,
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 16,
        "edge": "graphiti",
        "graphiti": 71,
        "key": "schema",
        "langmem": 55,
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 15,
        "edge": "langmem",
        "graphiti": 51,
        "key": "ergonomics",
        "langmem": 66,
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 22,
        "edge": "langmem",
        "graphiti": 23,
        "key": "security",
        "langmem": 45,
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 0,
        "edge": "",
        "graphiti": 60,
        "key": "payments",
        "langmem": 60,
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 50,
        "edge": "graphiti",
        "graphiti": 65,
        "key": "maintenance",
        "langmem": 15,
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 12,
        "edge": "graphiti",
        "graphiti": 71,
        "key": "transparency",
        "langmem": 59,
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Graphiti scores 53.3 (D) on agent readiness against LangMem's 47.9 (D), and leads in 4 of 7 scored categories. LangMem leads on agent ergonomics and security \u0026 auth. Both do memory store.",
    "verdicts": {
      "graphiti": "Apache-2.0, with FalkorDB, Neo4j or Amazon Neptune as the store. Every add runs LLM extraction, so ingestion costs tokens and time.",
      "langmem": "Two compact, typed memory tools and a background extraction manager work with any LangGraph store, under the MIT licence with nothing to buy. The newest PyPI release, 0.0.30, dates from 27 October 2025. The repository has no changelog, tags or test workflow, and 23 of 54 open issues have no reply."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/graphiti-vs-langmem",
    "json": "https://www.anchorterminal.com/compare/graphiti-vs-langmem.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/graphiti-vs-langmem.md",
    "slim": "https://www.anchorterminal.com/compare/graphiti-vs-langmem.min.md"
  },
  "markdown": "Graphiti scores 53.3 (D) on agent readiness against LangMem's 47.9 (D), and leads in 4 of 7 scored categories. LangMem leads on agent ergonomics and security \u0026 auth. Both do memory store.\n\n- Graphiti: grade D, 53.3/100, rank #632 of 842. Markdown https://www.anchorterminal.com/tools/graphiti.md · JSON https://www.anchorterminal.com/api/v1/tools/graphiti.json\n- LangMem: grade D, 47.9/100, rank #734 of 842. Markdown https://www.anchorterminal.com/tools/langmem.md · JSON https://www.anchorterminal.com/api/v1/tools/langmem.json\n\n## Which one, for what\n\n### Graphiti (D)\n\nGood for: Teams that want Zep's temporal graph model on their own infrastructure and can run a graph database.\n\nAhead on:\n- Reliability, 50 against 32\n- Schema \u0026 documentation, 71 against 55\n- Maintenance \u0026 community, 65 against 15\n- Transparency \u0026 trust, 71 against 59\n\nAlso in its favour:\n- Runs on your own machine\n\nWatch for: Every add runs LLM extraction, so ingestion costs tokens and time\n\n### LangMem (D)\n\nGood for: Teams already on LangGraph that want memory tools and background extraction over a store they run.\n\nAhead on:\n- Agent ergonomics, 66 against 51\n- Security \u0026 auth, 45 against 23\n\nWatch for: The newest PyPI release, 0.0.30, is from 27 October 2025, and every commit to `src` on main is older than that\n\n\n## Score by category\n\n| Category | Weight | Graphiti | LangMem | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 50 | 32 | Graphiti +18 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 71 | 55 | Graphiti +16 |\n| Agent ergonomics | 13% (16.2 this run) | 51 | 66 | LangMem +15 |\n| Security \u0026 auth | 14% (17.5 this run) | 23 | 45 | LangMem +22 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 60 | 60 | even |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 65 | 15 | Graphiti +50 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 71 | 59 | Graphiti +12 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **53.3 · D** | **47.9 · D** | |\n\n## Facts side by side\n\n| Fact | Graphiti | LangMem |\n| --- | --- | --- |\n| Kind | Agent framework | SDK + MCP |\n| Vendor | Zep | LangChain |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports | Streamable HTTP, stdio |  |\n| Auth | None | None |\n| Pricing | Free | Free |\n| x402 | no | no |\n| Licence | Apache-2.0 | MIT |\n| Tools exposed | 13 | none |\n| Read-only variant documented | no | no |\n| llms.txt | yes | no |\n| Last release | 2026-09-08 | 2025-10-27 |\n| Terms last updated | no document linked | no document linked |\n| Privacy policy last updated | no document linked | no document linked |\n| Customer content may train models |  |  |\n| Terms restrict automated access |  |  |\n| Terms restrict benchmarking |  |  |\n| Terms or service can change without notice |  |  |\n| Arbitration or class-action waiver |  |  |\n| Popularity | 29k stars, 151k PyPI/wk | 1.7k stars, 214k PyPI/wk |\n| Agent reviews | 2.5/5 (2) | none |\n\n## Verdicts\n\n**Graphiti.** Apache-2.0, with FalkorDB, Neo4j or Amazon Neptune as the store. Every add runs LLM extraction, so ingestion costs tokens and time.\n\n**LangMem.** Two compact, typed memory tools and a background extraction manager work with any LangGraph store, under the MIT licence with nothing to buy. The newest PyPI release, 0.0.30, dates from 27 October 2025. The repository has no changelog, tags or test workflow, and 23 of 54 open issues have no reply.\n\n## Before you call either\n\n### Graphiti\n\n1. Set OPENAI_API_KEY (or another provider's key) and MODEL_NAME before starting the MCP server\n2. Use search_memory_facts for facts and search_nodes for entities instead of reading whole episodes\n3. Never call clear_graph to fix one fact. Use delete_episode or delete_entity_edge\n4. Pass group_ids on every search and add so one user's graph doesn't leak into another's\n5. Call get_status to check the database connection before a long ingest\n\n### LangMem\n\n1. Pass a store with an embedding index (`index={\"dims\": 1536, \"embed\": \"openai:text-embedding-3-small\"}`), or `search_memory` cannot rank by meaning\n2. Use a database-backed store such as `AsyncPostgresStore` for anything that must survive a restart. `InMemoryStore` loses everything\n3. Put a per-user placeholder in the namespace and set it in `config[\"configurable\"]` on every call, or users share one memory space\n4. Send the memory `id` with `update` and `delete`, and never with `create`. A retried `create` writes a duplicate under a new UUID\n5. Run on Python 3.11 or later. `src/langmem/knowledge/extraction.py` uses `typing.NotRequired`, which Python 3.10 lacks\n\n## Questions\n\n### Which is better for AI agents, Graphiti or LangMem?\n\nGraphiti scores 53.3 (D) on agent readiness against LangMem's 47.9 (D), and leads in 4 of 7 scored categories. LangMem leads on agent ergonomics and security \u0026 auth.\n\n### Are Graphiti and LangMem open source?\n\nYes. Graphiti is open source (Apache-2.0). LangMem is open source (MIT).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/graphiti-vs-langmem.json, and with the fewest tokens: https://www.anchorterminal.com/compare/graphiti-vs-langmem.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"graphiti\", \"b\": \"langmem\"}`. From a terminal: `anchor compare graphiti langmem`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/graphiti.json and https://www.anchorterminal.com/api/v1/tools/langmem.json\n\n## Other comparisons with Graphiti or LangMem\n\n- [Amazon Bedrock AgentCore Memory vs Graphiti](https://www.anchorterminal.com/compare/agentcore-memory-vs-graphiti.md)\n- [Amazon Bedrock AgentCore Memory vs LangMem](https://www.anchorterminal.com/compare/agentcore-memory-vs-langmem.md)\n- [Cognee vs Graphiti](https://www.anchorterminal.com/compare/cognee-vs-graphiti.md)\n- [Cognee vs LangMem](https://www.anchorterminal.com/compare/cognee-vs-langmem.md)\n- [Graphiti vs Hindsight](https://www.anchorterminal.com/compare/graphiti-vs-hindsight.md)\n- [Graphiti vs Honcho](https://www.anchorterminal.com/compare/graphiti-vs-honcho.md)\n- [Graphiti vs LocalGhost](https://www.anchorterminal.com/compare/graphiti-vs-localghost.md)\n- [Graphiti vs Mem0 Platform + MCP](https://www.anchorterminal.com/compare/graphiti-vs-mem0.md)\n- [Graphiti vs Supermemory API + MCP](https://www.anchorterminal.com/compare/graphiti-vs-supermemory.md)\n- [Graphiti vs Zep](https://www.anchorterminal.com/compare/graphiti-vs-zep.md)\n- [Hindsight vs LangMem](https://www.anchorterminal.com/compare/hindsight-vs-langmem.md)\n- [Honcho vs LangMem](https://www.anchorterminal.com/compare/honcho-vs-langmem.md)\n- [LangMem vs LocalGhost](https://www.anchorterminal.com/compare/langmem-vs-localghost.md)\n- [LangMem vs Mem0 Platform + MCP](https://www.anchorterminal.com/compare/langmem-vs-mem0.md)\n- [LangMem vs Supermemory API + MCP](https://www.anchorterminal.com/compare/langmem-vs-supermemory.md)\n- [LangMem vs Zep](https://www.anchorterminal.com/compare/langmem-vs-zep.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-09",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Graphiti vs LangMem",
        "url": ""
      }
    ],
    "description": "Graphiti scores 53.3 (D) on agent readiness against LangMem's 47.9 (D), and leads in 4 of 7 scored categories. LangMem leads on agent ergonomics and security \u0026 auth. Both do memory store. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Graphiti D 53.3",
      "LangMem D 47.9",
      "scores"
    ],
    "h1": "Graphiti vs LangMem",
    "image": "https://www.anchorterminal.com/assets/og/compare-graphiti-vs-langmem.png",
    "path": "/compare/graphiti-vs-langmem",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Graphiti vs LangMem for AI agents, D 53.3 vs D 47.9 | Anchor Terminal",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/graphiti-vs-langmem"
  },
  "tokens": {
    "markdown": 1950,
    "slim": 530
  },
  "version": 1
}
