{"data":{"slug":"mempalace-mempalace","name":"mempalace","tagline":"The best-benchmarked open-source AI memory system","github_url":"https://github.com/MemPalace/mempalace","owner":"MemPalace","repo":"mempalace","owner_avatar_url":"https://avatars.githubusercontent.com/u/275135684?v=4","primary_language":"Python","stars":59143,"forks":7565,"topics":["ai","chromadb","llm","mcp","memory","python"],"archived":false,"github_pushed_at":"2026-09-18T07:55:23+00:00","maintenance_label":"Very active","stars_delta_30d":743,"url":"https://www.graphcanon.com/tools/mempalace-mempalace","markdown_url":"https://www.graphcanon.com/tools/mempalace-mempalace.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/mempalace-mempalace","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=mempalace-mempalace","description":"The best-benchmarked open-source AI memory system. And it's free.","homepage_url":"http://mempalaceofficial.com/","license":"MIT","open_issues":735,"watchers":323,"ai_summary":"An open-source AI memory system that uses ChromaDB as its default vector-store backend, supporting Python 3.9+ and offering both local and server-based embedding options.","readme_excerpt":"### Docker\n\nA container image is also available for running the MCP server or the CLI\nwithout a local Python toolchain. Multi-arch (amd64 + arm64), so it runs\nnatively on Apple Silicon:\n\n```bash\ndocker pull ghcr.io/mempalace/mempalace:latest\n```\n\nEverything persists under `/data` — palace, config, and the cached embedding\nmodel — so mount a volume there and reuse it across runs:\n\n```bash\n\n---\n\n## Requirements\n\n- Python 3.9+\n- A vector-store backend (ChromaDB by default)\n- ~300 MB disk for the embedding model. Onboarding (`python -m mempalace.onboarding`) offers `embeddinggemma-300m` (multilingual, 100+ languages, recommended) or `all-MiniLM-L6-v2` (English-only, ~30 MB). See the docstring at [`mempalace/embedding.py`](mempalace/embedding.py) for details and migration notes.\n- Optional — compute embeddings on a server instead of locally. Set `embedding_model: \"openai-compat\"` in `~/.mempalace/config.json` together with `embedding_api_url` / `embedding_api_model` (and `embedding_api_key` if the server needs auth) to use any OpenAI-compatible `/v1/embeddings` endpoint — LM Studio, llama.cpp, vLLM, Ollama's OpenAI shim, or a self-hosted server (e.g. a larger multilingual or GPU-served embedder). Each key is overridable via the matching `MEMPALACE_EMBEDDING_API_*` env var. When the endpoint is on your machine or LAN, no content leaves your network. Switching to it requires `mempalace repair rebuild-index` (different vector space).\n\nNo API key is required for the core benchmark path.\n\n---\n\n## License\n\nMIT — see [LICENSE](LICENSE).\n\n\n[version-shield]: https://img.shields.io/badge/version-3.10.0-4dc9f6?style=flat-square&labelColor=0a0e14\n[release-link]: https://github.com/MemPalace/mempalace/releases\n[python-shield]: https://img.shields.io/badge/python-3.9+-7dd8f8?style=flat-square&labelColor=0a0e14&logo=python&logoColor=7dd8f8\n[python-link]: https://www.python.org/\n[license-shield]: https://img.shields.io/badge/license-MIT-b0e8ff?style=flat-square&labelColor=0a0e14\n[license-link]: https://github.com/MemPalace/mempalace/blob/main/LICENSE\n[discord-shield]: https://img.shields.io/badge/discord-join-5865F2?style=flat-square&labelColor=0a0e14&logo=discord&logoColor=5865F2\n[discord-link]: https://discord.com/invite/ycTQQCu6kn","github_created_at":"2026-04-05T01:12:07+00:00","created_at":"2026-07-07T17:31:06.422829+00:00","updated_at":"2026-10-04T04:00:42.347338+00:00","categories":[{"slug":"data-retrieval","name":"Data & Retrieval","url":"https://www.graphcanon.com/categories/data-retrieval","markdown_url":"https://www.graphcanon.com/categories/data-retrieval.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/data-retrieval"},{"slug":"vector-databases","name":"Vector Databases","url":"https://www.graphcanon.com/categories/vector-databases","markdown_url":"https://www.graphcanon.com/categories/vector-databases.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/vector-databases"}],"tags":[{"slug":"ai","name":"ai"},{"slug":"chromadb","name":"chromadb"},{"slug":"embedding","name":"embedding"},{"slug":"llm","name":"llm"},{"slug":"mcp","name":"mcp"},{"slug":"memory","name":"memory"},{"slug":"python","name":"python"},{"slug":"vector-store","name":"vector-store"}],"trust":{"provenance":{"is_fork":false,"github_id":1201656210,"owner_type":"Organization","methodology":"github_public_v1","parent_repo":null,"near_duplicate_slugs":[]},"computed_at":"2026-09-18T08:38:16.435Z","maintenance":{"label":"Very active","score":96,"methodology":"github_public_v1","releases_90d":7,"days_since_push":0,"last_release_at":"2026-09-16T00:24:11Z","stars_delta_30d":743,"open_issues_delta_30d":31},"security_summary":{"status":"no_lockfile","scanner":null,"low_count":0,"high_count":0,"last_scan_at":"2026-10-04T04:00:41.390Z","medium_count":0,"scan_profile":"none","critical_count":0}},"capability_facts":{"mcp":{"source":"repo_scan","observed_at":"2026-09-18T08:38:15.287Z","server_manifest":false},"scan":{"source":"repo_scan","observed_at":"2026-09-18T08:38:15.287Z"},"deploy":{"source":"dockerfile:Dockerfile","self_host":true,"observed_at":"2026-09-18T08:38:15.287Z","managed_saas":false},"has_cli":{"value":true,"source":"pyproject.toml:[project.scripts]","observed_at":"2026-09-18T08:38:15.287Z"},"languages":{"value":["python"],"source":"github.language+pyproject.toml","observed_at":"2026-09-18T08:38:15.287Z"},"has_docker":{"value":true,"source":"dockerfile:Dockerfile","observed_at":"2026-09-18T08:38:15.287Z"},"license_spdx":{"value":"MIT","source":"github.license","observed_at":"2026-09-18T08:38:15.287Z"}},"decision_facts":{"hosting":null,"pricing":null,"requirements":null,"constraints":null,"when_to_use":["When you need a benchmarked open-source AI memory system that supports a wide range of languages through the embeddinggemma-300m model.","If you require a system that can be run locally or on a server, with the flexibility to switch between local and server-based embedding options.","When you want to use a system that is compatible with OpenAI-compatible embedding endpoints, allowing for the use of larger multilingual or GPU-served embedders."],"when_not_to_use":["If you are working in an environment where Python 3.9+ is not available, as mempalace requires this version or higher.","When you need a system that does not require at least 300 MB of disk space for the embedding model, as mempalace requires this minimum space for its recommended multilingual model."],"source":"enrich:decision_facts","observed_at":"2026-09-18T11:15:57.649Z"},"constraint_facets":null,"decision_summary":[{"label":"Adopt for","value":"mempalace is an open-source AI memory system that leverages ChromaDB as its default vector-store backend, supporting Python 3.9+ and offering both local and server-based embedding options."}]}}