# Zekra > Zekra (zekra.dev) is open-source (AGPL-3.0) shared long-term memory for AI agents, reached over MCP. Claude Code, Codex, Cursor, Gemini and custom agents retain facts and recall them across sessions with citations. Writes are deduplicated (ADD/UPDATE/INVALIDATE/NOOP); recall is hybrid vectors + BM25 + rerank + a 1-hop knowledge graph; Arabic and English share one index. Hosted at app.zekra.dev, MCP endpoint mcp.zekra.dev, self-hostable with Docker Compose. Built by Fady Mondy. Entity type: SoftwareApplication A memory organ for AI agents. Long-term recall and an entity graph that any agent reaches over MCP — so what one session learns, the next one already knows. Install: ``` curl -fsSL https://app.zekra.dev/install.sh | sh ``` ## Presentations Zekra builds a deck and a long-form report from what is already in a brain: its notes, a search query, an entity's spine or the brain's top notes. The server uses only the gathered material, so nothing is invented, and the report cites its sources. - Or start from a pasted outline, with templates: consulting proposal, product pitch, status report, assessment, landing concept. - Concept page previews with style presets. - Edit any field afterwards. Zekra validates the deck and points to the exact field to fix. - Translate a whole deck between Arabic and English in one call, structure preserved. Arabic renders right-to-left. - Export the deck to PDF, one page per slide, and the report to PDF or Word (.docx). - Share a read-only link that your customer opens without an account: no speaker notes, noindex, optional expiry, views counted. It can run on your own verified custom domain. From the web console or any MCP agent: presentation_create_from_outline, presentation_translate, presentation_export, presentation_share. ## Media memories (OCR) Remember an image, a PDF, a video or an audio file. A whiteboard, receipt, document or screenshot becomes searchable text in the brain. - OCR (PP-OCRv5) reads Arabic, English and many other scripts, even mixed in one image, without you naming the language. Right-to-left lines come out in the right order. - PDFs use the embedded text layer first and fall back to OCR for scans. - Video: keyframes at scene changes are read, plus a speech transcript. Audio is transcribed with faster-whisper. - A live camera overlay in the web console, and you can pair your phone as a camera. - Agents can do it over MCP: media_retain takes base64 or a public URL, and media_get returns the text. Self-hosting: media reading needs the optional zekra-ocr service; without it, media reading is off. ## Features - **Hybrid recall, not just vectors**: Vector similarity and BM25 fused with reciprocal rank, then reranked. A name or an exact phrase is found by the half of the search that is good at names. - **Updates facts instead of piling them up**: Every write goes through a decision step — ADD, UPDATE, INVALIDATE or NOOP — so a contradicted fact is replaced, not duplicated. Forget soft-invalidates; history stays queryable. - **Many brains, a knowledge graph**: One brain per project or team, with per-agent grants and scoped tokens enforced server-side. Entities and typed relations are extracted from memories and can be traversed. - **Any client, one protocol**: Claude Desktop and Code, Codex, Gemini and Cursor connect through one CLI that is both the MCP server and its installer. ## Get started 1. **Sign up and mint a token**: Create a brain at app.zekra.dev, then a cbt_ token for your agent. 2. **Install the CLI** — `curl -fsSL https://app.zekra.dev/install.sh | sh` 3. **Log in** — `zekra auth login --token ` 4. **Connect your agent** — `zekra mcp:install claude-code` ## Questions people ask ### How do I give Claude Code memory across sessions? Connect a memory server over MCP. With Zekra: install the CLI, log in with a token and run zekra mcp:install claude-code. Claude Code then calls memory_retain to save decisions and memory_recall to bring them back in the next session, with citations. CLAUDE.md stays for rules; Zekra holds the facts a project collects. ### What is an MCP memory server? A service that exposes remember and recall tools through the Model Context Protocol, so any MCP client — Claude Code, Codex, Cursor, Gemini or your own agents — can store facts and retrieve them later. Zekra is one: open source, with hybrid vector + BM25 recall, a knowledge graph, and many brains with per-agent grants. ### Is Zekra open source? Can I self-host it? Yes. The code is on GitHub under AGPL-3.0, and the repository ships a Docker Compose stack: Postgres with VectorChord, the Go API, the console and two CPU TEI servers. The hosted version is at app.zekra.dev. ### How is Zekra different from mem0, Zep or Letta? Zekra is MCP-first: one command connects Claude Code, Codex, Cursor, Gemini or Claude Desktop, and agents share the same brains. It deduplicates on write (ADD / UPDATE / INVALIDATE / NOOP), recalls with vectors + BM25 + rerank + a 1-hop graph, and indexes Arabic and English together. It is younger and smaller than those projects, with one maintainer. ### Can Zekra make a presentation from my notes? Yes. Zekra builds a deck and a long-form report from what is in a brain (its notes, a search query, an entity's spine or the top notes), using only the gathered material, and the report cites its sources. You can also start from a pasted outline with templates such as a consulting proposal or product pitch. Export the deck to PDF and the report to PDF or Word, or share a read-only link. ### Can Zekra translate a deck between Arabic and English? Yes. One call (presentation_translate, or the web console) translates a whole deck from Arabic to English or from English to Arabic and keeps its structure. Arabic decks render right-to-left. ### Can Zekra read text from photos, receipts or whiteboards (OCR)? Yes. Remember an image and Zekra turns the text in it into searchable memory. OCR reads Arabic, English and many other scripts, mixed in one image, without you naming the language. PDFs, video (keyframes plus a speech transcript) and audio are supported too. Self-hosters run the optional zekra-ocr service. ### Which clients does Zekra work with? Any MCP client. The CLI installs it into Claude Code, Claude Desktop, Codex, Gemini and Cursor. There is also a web console, desktop apps for macOS, Windows and Linux, iPhone and Android betas, a browser extension and a REST API. ## Links - [Source code](https://github.com/fadymondy/zekra) - [Community Discord](https://discord.gg/99JBJd6FsR) ## Pages - [Home](https://zekra.dev/en) - [Brand](https://zekra.dev/en/brand) - [Contact](https://zekra.dev/en/contact) - [Blog](https://zekra.dev/en/blog) - [Testimonials](https://zekra.dev/en/testimonials) ## Writing - [Giving Claude Code a Memory That Survives Sessions (MCP + Hybrid Recall)](https://zekra.dev/en/blog/claude-code-memory-across-sessions-mcp): Every new Claude Code session starts from zero. - [Self-Hosted AI Agent Memory: Zekra, an Open-Source MCP Server](https://zekra.dev/en/blog/self-hosted-ai-agent-memory-server): Zekra gives Claude Code, Codex, Cursor and your own agents one shared, self-hosted memory over MCP. - [Stale Memories in AI Agents: Invalidate, Supersede or Decay?](https://zekra.dev/en/blog/stale-memories-ai-agents-invalidate-supersede-decay): Long-term memory fails quietly: the agent recalls a fact that stopped being true. ## Documentation - [Zekra docs](https://zekra.dev/en/docs): 9 pages, from fadymondy/zekra - [Introduction](https://zekra.dev/en/docs) - [Quickstart](https://zekra.dev/en/docs/quickstart) - [MCP server](https://zekra.dev/en/docs/mcp) - [CLI](https://zekra.dev/en/docs/cli) - [REST API](https://zekra.dev/en/docs/api) - [Data sources](https://zekra.dev/en/docs/data-sources) - [Capture hook](https://zekra.dev/en/docs/capture-hook) - [Security](https://zekra.dev/en/docs/security) - [Self-hosting](https://zekra.dev/en/docs/self-hosting) ## Built with ToGO Built with ToGO (https://to-go.dev). ToGO plugins and features used: ToGO kernel · REST, GraphQL, OpenAPI, brain · memory engine, brain-tei · embeddings & rerank, brain-cognee · graph extraction, brain-ocr · OCR, Redis L1 cache, Auth, PostgreSQL, Background jobs, File storage, Mail. - ToGO: https://to-go.dev/?utm_source=zekra.dev&utm_medium=built-with - Showcase: https://to-go.dev/en/showcase#zekra