Memora MCP Server
Give your AI agents persistent, collective memory — with deduplicating absorb, supersession lineage, semantic search, and a graph UI. Speaks MCP.
Memora is an open-source mcp server by agentic-box, written mainly in Python, with 745 GitHub stars and the MIT license. Its code was last updated Oct 28, 2026. The latest PyPI release is memora-mcp 0.3.3, published Aug 13, 2026, with 34 downloads last week.
Scan summary: scanned Nov 5, 2026 at commit 442ca1b. Seen able to read environment and secrets. Scan policy
What Memora can touch
- Our checks did not find this. The tool may still do it.Run shell commandsNot seen in this scan
- Our checks did not find this. The tool may still do it.Run dynamic codeNot seen in this scan
- Our checks did not find this. The tool may still do it.Read or write filesNot seen in this scan
- Seen in this scan, either in the code or while it ran.Read environment and secretsFound in the code by our scan
- Our checks did not find this. The tool may still do it.Control a web browserNot seen in this scan
- Not checked directly. Its own description suggests it does this.Connect to databasesLikely, from its own description
- Our checks did not find this. The tool may still do it.Read or send messagesNot seen in this scan
- Our checks did not find this. The tool may still do it.Touch money or tradingNot seen in this scan
- Our checks did not find this. The tool may still do it.Connect to the internetNo connections seen while running
"Not seen" means our checks did not find it, and the tool may still do it. Covers commit 442ca1b, Nov 5, 2026. See the scan policy.
Before you install Memora
AgenticMart scanned Memora on Nov 5, 2026 with automated checks for hidden code, known-malicious packages, leaked secrets and vulnerable dependencies. The result covers one commit under our scan policy, so review what access you give it and check any advisories shown here.
What it can access
- An MCP server is a program your AI app starts and talks to. A local one runs with your user's permissions: it can see the files, environment variables and network your account can.
- Based on its description and topics, it likely needs to connect to a database.
- Based on its description and topics, it likely needs to act on cloud infrastructure.
Before you install
- Give it a read-only database user unless it must write.
- Use a role with only the permissions it needs, never an admin key.
- Pin the version you reviewed instead of always installing the latest release.
- Read the tool list or scripts before the first run, and keep approval prompts on for actions that write, send or delete.
- Maintained by agentic-box on GitHub, 745 stars and 84 forks. Popularity is not proof of safety.
- Last code change: Oct 28, 2026.
- Open-source license: MIT.
Tools Memora exposes (44)
Listed by the server itself during our scan of commit 442ca1b.
memory_createCreate a new memory entry. Args: content: The memory content text metadata: Optional metadata dictionary tags: Optional list of tags suggest_similar: If True, find similar memories and suggest consolidation (default: True) similarity_threshold: Minimum si
memory_create_issueCreate a new issue/bug memory. Args: content: Description of the issue status: Issue status - "open" (default) or "closed" closed_reason: If closed, the reason - "complete" or "not_planned" severity: Issue severity - "critical", "major", "minor" (default)
memory_create_todoCreate a new TODO/task memory. Args: content: Description of the task status: Task status - "open" (default) or "closed" closed_reason: If closed, the reason - "complete" or "not_planned" priority: Task priority - "high", "medium" (default), "low" categor
memory_create_sectionCreate a new section/subsection header memory. Section memories are organizational placeholders that: - Are NOT visible in the graph visualization - Are NOT included in duplicate detection - Do NOT compute embeddings or cross-references Args: content: Title/description
memory_listList memories, optionally filtering by substring query or metadata. Returns compact previews by default to reduce context usage. Use ``content_mode="full"`` when you need the complete content. Use ``memory_get`` to fetch full content for specific IDs. Args: query: Optional
memory_list_compact[Deprecated] List memories in compact format (id, preview, tags only). Prefer ``memory_list`` which now defaults to compact previews with richer fields and configurable ``content_mode``/``preview_chars``. Returns minimal fields: id, content preview (first 80 chars), tags, and created_a
memory_create_batchCreate multiple memories in one call.
memory_delete_batchDelete multiple memories by id. Args: ids: Memory IDs to delete reason: Optional tombstone reason (default "deleted")
memory_absorbIntelligently absorb facts into memory with dedup and consolidation. For each fact: searches for similar existing memories, classifies the relationship via LLM (duplicate/update/contradict/related/new), then takes the appropriate action. Related new facts are automatically consolida
memory_store_documentStore a structured document as a root memory + searchable fragments. Parses markdown into typed fragments (claims, plan items, references, risks, section chunks) that are individually searchable while the full document remains retrievable as a unit. Args: content: Full mark
memory_get_documentRetrieve a stored document and its fragments by document key. Args: document_key: The document identifier used during storage content_mode: "preview" (default) or "full" for fragment content preview_chars: Max chars for preview mode (default: 120) node_kinds: Opt
memory_delete_documentDelete a stored document and all its fragments. Args: document_key: The document identifier version: Optional — delete only this version. If omitted, deletes all versions. Returns: {deleted_roots: count, deleted_fragments: count, deleted_ids: [...]}
memory_getRetrieve a single memory by id (full content by default). Args: memory_id: ID of the memory to retrieve include_images: If False, strip image data from metadata to reduce response size fields: Optional list of fields to return (e.g. ["id","content","tags"]). None returns
memory_updateUpdate an existing memory. Metadata updates merge into existing metadata by default. Set a metadata key to null/None to delete that key. Pass replace_metadata=True only when intentionally replacing the whole metadata object.
memory_deleteDelete a memory by id. Deleting any version of a supersession lineage retires EVERY version (so a deleted fact cannot reappear as an older version): follow=latest/active hide them, memory_get on one says it was retired by deleting this id, and a later supersedes edge does not restor
memory_tagsReturn the allowlisted tags.
memory_tag_hierarchyReturn stored tags organised as a namespace hierarchy.
memory_validate_tagsValidate stored tags against the allowlist and report invalid entries.
memory_hierarchyReturn memories organised into a hierarchy derived from their metadata. Args: compact: If True (default), return only id, preview (first 80 chars), and tags per memory to reduce response size. Set to False for full memory data.
memory_verify_integrityRead-only embedding integrity doctor with bounded offending ids. record_model=true (explicit, E1b): on a store with NO recorded embedding model (written before E1) whose vectors are what the current model produces, record the current model -- one memories_meta row (on a live primary
memory_semantic_searchPerform a semantic search using vector embeddings. Returns compact previews by default. Use content_mode="full" for complete content. Args: query: Search query text top_k: Maximum number of results (legacy name; default 5 if neither limit nor top_k) limit: Alias for
memory_hybrid_searchPerform a hybrid search combining keyword (FTS) and semantic (vector) search. Uses Reciprocal Rank Fusion (RRF) to merge results from both search methods, providing better results than either method alone. Returns compact previews by default. Use content_mode="full" for complete conten
memory_digestReturn a deterministic digest of memories related to a topic. The digest is an aggregation surface for agents that need current context, not a narrative generator. It combines active hybrid-search hits, optional supersession lineage, related memory ids, and matching TODO/issue memories.
memory_rebuild_embeddingsRecompute embeddings for all memories. Rate limited: 300s cooldown. The ONLY way embeddings are rebuilt: a search never does (it reports a needed repair once, in the log and in /health/db). It rewrites every embedding row -- on a D1 store directly on D1, on a replicated local primar
memory_relatedReturn cross-referenced memories for a given entry. Consistency: the ``related`` graph is **eventually consistent**. When a new memory A is created or updated with references to an existing B, A.related is computed fresh but B.related is not re-cascaded — it stays valid until either
memory_rebuild_crossrefsRecompute cross-reference links for all memories. Rate limited: 300s cooldown. Use this periodically (or after bulk imports) to close the eventual-consistency gap in the ``related`` graph — see ``memory_related`` for the consistency model.
memory_statsGet statistics and analytics about stored memories. Also reports WHICH DATABASE this session is bound to (memora #997). A valid-but-wrong database name in a workspace's .mcp.json is otherwise undetectable: every tool works, reads succeed, and writes land silently in another project'
memory_insightsAnalyze stored memories and produce actionable insights. Returns activity summary, open items, consolidation suggestions, and optional LLM-powered pattern detection. Args: period: Time period to analyze (e.g., "7d", "1m", "1y") include_llm_analysis: If True, use LLM to
memory_boostBoost a memory's importance score. Manually increase a memory's base importance to make it rank higher in importance-sorted searches. The boost is permanent and cumulative. Args: memory_id: ID of the memory to boost boost_amount: Amount to add to base importance (defaul
memory_linkCreate an explicit typed link between two memories. Args: from_id: Source memory ID to_id: Target memory ID edge_type: Type of relationship. Options: - "references" (default): General reference - "implements": Source implements/realizes target
memory_unlinkRemove a link between two memories. Args: from_id: Source memory ID to_id: Target memory ID bidirectional: If True, also remove reverse link (default: True) Returns: Dict with removed links
memory_clustersDetect clusters of related memories. Args: min_cluster_size: Minimum memories to form a cluster (default: 2) min_score: Minimum similarity score to consider connected (default: 0.3) algorithm: "connected_components" (default) or "louvain" Louvain uses
memory_find_duplicatesFind potential duplicate memory pairs with optional LLM-powered comparison. Scans cross-references to find memory pairs with similarity >= threshold, then optionally uses LLM to semantically compare them. Uses the same threshold (0.85) as the graph UI duplicate detection. Args:
memory_detect_supersessionsDetect memories that supersede (update/replace) other memories. Scans existing memories for pairs where one is an evolved/updated version of another, then creates 'supersedes' edges between them. Complements memory_absorb which only catches supersessions at write time. Uses neutral
memory_backfill_tagsRe-tag existing memories with project-prefixed tags. Uses deterministic normalization to prefix generic tags (e.g. "plan" → "memora/plan") when the memory content clearly belongs to a specific project. No LLM calls. Idempotent: re-running produces the same result. Args: dr
memory_mergeMerge source memory into target, then delete source. Combines two memories into one, preserving content and metadata. Args: source_id: Memory ID to merge from (will be deleted) target_id: Memory ID to merge into (will be updated) merge_strategy: How to combine conte
memory_exportExport all memories to JSON format for backup or transfer. Rate limited: 60s cooldown.
memory_upload_imageUpload an image file directly to R2 storage. Uploads a local image file to R2 and returns the r2:// reference URL that can be used in memory metadata. Args: file_path: Absolute path to the image file to upload memory_id: Memory ID this image belongs to (used for organiz
memory_migrate_imagesMigrate existing base64 images to R2 storage. Scans all memories and uploads any base64-encoded images to R2, replacing the data URIs with R2 URLs. Args: dry_run: If True, only report what would be migrated without making changes Returns: Dictionary with migration
memory_export_graphExport memories as interactive HTML knowledge graph. Args: output_path: Path to save HTML file (default: ~/memories_graph.html) min_score: Minimum similarity score for edges (default: 0.25) Returns: Dictionary with path, node count, edge count, and tags
Memora is an open-source mcp server by agentic-box, written mainly in Python. Give your AI agents persistent, collective memory — with deduplicating absorb, supersession lineage, semantic search, and a graph UI. Speaks MCP.
At a glance
- Stars
- 745
- Forks
- 84
- Language
- Python
- License
- MIT
- Created
- Sep 2025
- Last update
- Oct 28, 2026
- Type
- MCP Server
- Price
- Free
Topics
Questions about Memora
What is Memora?
Give your AI agents persistent, collective memory — with deduplicating absorb, supersession lineage, semantic search, and a graph UI. Speaks MCP.
Who maintains Memora?
Memora is maintained by agentic-box on GitHub (agentic-box/memora). AgenticMart lists it from public repository data.
Is Memora safe to use?
AgenticMart scanned Memora on Nov 5, 2026 with automated checks for hidden code, known-malicious packages, leaked secrets and vulnerable dependencies. The result covers one commit under our scan policy, so review what access you give it and check any advisories shown here.
What license does Memora use?
It is published under the MIT license.
Memora alternatives
View more →Similar mcp servers in Database Management, ranked by GitHub stars. Compare licence, recent activity and scan status before you choose.
| Name | Stars | Licence | Last updated | Scan |
|---|---|---|---|---|
| Memora (this page) agentic-box | 745 | MIT | Oct 28, 2026 | Scanned, no flagged issues |
| Codebase Memory MCP DeusData | 48k | MIT | Nov 1, 2026 | Scanned, see report |
| Xerj xerj-org | 19k | Apache-2.0 | Nov 1, 2026 | Scanned, no flagged issues |
| MCP Toolbox googleapis | 17k | Apache-2.0 | Nov 1, 2026 | Scanned, no flagged issues |
| Nightingale ccfos | 13k | Apache-2.0 | Oct 30, 2026 | Scanned, no flagged issues |
| Dbhub bytebase | 3.8k | MIT | Oct 26, 2026 | Scanned, no flagged issues |