- Category
- Developer Tools
- Rank
- No. 319Tools index
- Pricing
- Open Source
- Type
- TOOL
- Builder
- topoteretes
- GitHub
- 30.7k stars
- Latest release
- v1.5.4
- Date
About
An open-source memory layer for AI agents: it ingests documents and other data, builds a self-hosted knowledge graph over them, and exposes a small API — remember(), recall(), forget(), improve() — for persisting and retrieving context across sessions. Retrieval combines vector search with graph traversal over a generated ontology, so an agent can follow relationships rather than only matching text. It runs locally against Postgres, Neo4j or SQLite with session isolation, multi-tenancy and traceable retrieval, and ships Python, TypeScript and Rust clients.
What it does
Cognee gives agents a short-term session cache and a durable memory store. Session facts can sync into permanent storage in the background. Queries can check session context first, then fall through to stored knowledge, with automatic routing among search strategies. Developers can store, retrieve, refine, and delete memory through Python, a command line tool, an API server, or MCP.
Why it's ranked here
Cognee is a substantial memory layer, not a thin retrieval wrapper. It supports local and remote operation, session-aware recall, graph processing, multiple database backends, and several client surfaces. The strongest case is architectural breadth. The caution is operational weight: durable graph extraction depends on an LLM, structured output quality, storage services, and careful model selection.
What's good
The session and permanent memory split fits real agent lifecycles. Automatic query routing reduces how much retrieval logic callers must own. Self-hosting, managed-server connections, dataset isolation, tracing, and audit-oriented features address production concerns. Optional integrations cover PostgreSQL with vectors, Neo4j, local models, major model providers, and common agent frameworks.
Tradeoffs
The default Python installation carries a large dependency set, including web serving, databases, document parsing, embeddings, and authentication components. An LLM API key is required for graph generation. The local UI and its MCP server require a Docker-compatible runtime. Local extraction reliability varies sharply by model, and weaker models may produce invalid schemas, empty results, or dropped graphs.
How to use it well
Use Cognee when an agent must remember user preferences, prior work, documents, and relationships across sessions. Start with the Python library and default storage, then add a dedicated graph or vector backend when deployment needs justify it. Validate graph extraction with representative data and a documented reliable model. Treat Cognee as the memory and retrieval layer, not as a complete agent runtime or application framework.
Technical notes+
pyproject.toml defines a Hatchling-built Python package for Python 3.10 through 3.14, exposes cognee-cli, and packages cognee, cognee_db_workers, distributed, and kuzu. cognee/__init__.py exports both the older pipeline API and the memory-oriented remember, recall, improve, forget, serve, and disconnect surface. cognee-mcp/src/server.py builds a FastMCP server with SSE and streamable HTTP transports, CORS configuration, DNS-rebinding controls, background task tracking, and a health route. docs/ollama_models.md explains that graph extraction uses Instructor with JSON schemas and documents model-specific reliability limits. kuzu/__init__.py is a compatibility shim that exposes Ladybug through the legacy Kuzu module name.
Observed
- License
- Apache-2.0
- Primary language
- Python
- Python support
- Python 3.10 through 3.14
- Installation
- Python package installable with pip, Poetry, uv, or another Python package manager
- Interfaces
- Python library, command line tool, API server, local UI, and MCP server
- MCP transports
- HTTP, SSE, and stdio are documented
- Platform support
- macOS, Linux, and Windows classifiers are declared
- Packaging
- Hatchling build backend with optional extras for databases, model providers, tracing, scraping, documents, and frameworks
Read from README.md, pyproject.toml, docs/ollama_models.md, docs/docker-colima-setup.md, kuzu/__init__.py, cognee/__init__.py, cognee/__main__.py, distributed/app.py, cognee_db_workers/__init__.py, cognee/cli/__init__.py, cognee-mcp/src/server.py, cognee/memory/__init__.py, cognee/shared/__init__.py.
Tags
Tech Stack
Media

Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.
