Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

Engram

PYPI · ENGRAM-CHATEAU

Local, private long-term memory for AI: verbatim, searchable, correctable. No LLM or API key.

Available components

0 this week 63 Trust /100

Last scanned (1 day ago)

Scores higher than 59% of PyPI servers

Category Memory and Knowledge

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security75
  • No malware found by supply-chain analysis.Pass
  • A critical CVE affects chromadb, and no fixed version has been published yet.Fail
  • Runs setuptools.build_meta at install time, a recognised build step with no custom scripting around it. View diagnostics → Pass
  • 8 of 93 dependencies flagged as unhealthy.Partial
Provenance & Transparency97
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Cryptographically verified build provenance (signed, bound to TushaeBXN/engram). View diagnostics → Pass
  • Clear OSI-approved license (MIT).Pass
  • Actively maintained (last published 14 days ago).Pass
  • Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability57
  • AI-judged instruction clarity (fair).Partial
  • Tool/resource definitions use about 2026 tokens (~65/item across 31 items; 31 tools + 0 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management0
  • Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage75
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 25% of tool parameters carry a description.Partial
Tool Safety75
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • 0 of 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "engram_delete_drawer" implies "delete" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
  • An AI judge read all 32 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities20
  • Spec-recency check failed: implements MCP spec 2024-11-05; the latest is 2026-07-28. See how to fix → Fail

Unverified: 1 category

A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 21 Oct 26 +15
    • Malware scan: unverified → pass ▲ security
  • 20 Oct 26 48

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 5 Nov 2026 · Analysed pypi/engram-chateau@1.10.5

Provenance Verified

A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.

Result Verified
Ecosystem pypi
Reason Verified
Discovered via Registry attestation endpoint
Source repo TushaeBXN/engram
Certificate issuer https://token.actions.githubusercontent.com
Certificate SAN https://github.com/TushaeBXN/engram/.github/workflows/publish.yml@refs/tags/v1.10.5
Rekor log index 3342700752
Predicate type PyPI publish attestation https://docs.pypi.org/attestations/publish/v1
Subject digest sha256:8066cc1494a332e66299044be26c5cd1a685df9c8096cbe2cf712e1208a39a07

Background: How many MCP packages publish verified provenance →

Install scripts 1 script
Hook Tier Command
build_backend allowlisted setuptools.build_meta

Background: Why install scripts are a supply-chain risk →

MCP tools · 31 exposed · ~1,820 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
engram_add_memory ~225

Store a new memory drawer in the château. The result lists 'possible_updates': existing memories this one may replace. If it does, call engram_supersede (or pass 'supersedes' here).

NameTypeReqDescription
based_onarray–IDs of memories that are evidence for this one
contentstringyesMemory content to store
derived_fromarray–IDs of memories this one was inferred from
hallstring––
pinnedboolean––
reasonstring–Why it replaces it (used with 'supersedes')
roomstring––
sourcestring–Where it came from: user (the person said it), primary (original document, law, ruling, data), secondary (reporting or analysis), tool (search or program output), inference (your own conclusion)
source_refstring–Citation, URL or document it came from
supersedesstring–ID of a memory this one replaces (optional)
wingstring––

No output schema declared.

No examples provided.

engram_audit ~35

Run a memory health audit. Returns JSON summary of issues found.

NameTypeReqDescription
fixboolean–Auto-resolve safe issues.

No output schema declared.

No examples provided.

engram_check ~36

Memory maintenance report: conclusions whose evidence was corrected or disputed, inferences with no evidence, unresolved conflicts, broken links. Changes nothing.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

engram_compress ~42

Compress text into Engram Shorthand (ES).

NameTypeReqDescription
confidenceinteger––
is_codeboolean––
textstringyes–

No output schema declared.

No examples provided.

engram_correct ~172

Save a correction: a new memory that replaces an outdated one (same wing/room/hall). The old memory stays searchable but is marked superseded, and search shows the correction first. Safe to retry.

NameTypeReqDescription
based_onarray–IDs of memories that support the corrected version
contentstringyesThe corrected, current information
memory_idstringyesID (or unique prefix) of the outdated memory
reasonstring–Why it changed
sourcestring–Where it came from: user (the person said it), primary (original document, law, ruling, data), secondary (reporting or analysis), tool (search or program output), inference (your own conclusion)
source_refstring–Citation, URL or document it came from

No output schema declared.

No examples provided.

engram_create_room ~39

Create a new room within a wing.

NameTypeReqDescription
descriptionstring––
namestringyes–
wingstringyes–

No output schema declared.

No examples provided.

engram_create_wing ~33

Create a new wing in the château.

NameTypeReqDescription
descriptionstring––
namestringyes–

No output schema declared.

No examples provided.

engram_decompress ~31

Decompress Engram Shorthand (ES) back to natural language.

NameTypeReqDescription
textstringyes–

No output schema declared.

No examples provided.

engram_delete_drawer ~47

Delete a drawer from the château.

NameTypeReqDescription
drawer_idstringyes–
hallstringyes–
roomstringyes–
wingstringyes–

No output schema declared.

No examples provided.

engram_diary_read ~35

Read recent diary entries for a specialist agent.

NameTypeReqDescription
agentstringyes–
last_ninteger––

No output schema declared.

No examples provided.

engram_diary_write ~41

Write a diary entry for a specialist agent.

NameTypeReqDescription
agentstringyes–
entrystringyes–
tagsarray––

No output schema declared.

No examples provided.

engram_dispute ~48

Mark two memories as conflicting when it is not yet clear which is right.

NameTypeReqDescription
id_astringyes–
id_bstringyes–
reasonstring––

No output schema declared.

No examples provided.

engram_get_drawer ~47

Fetch a specific drawer by ID.

NameTypeReqDescription
drawer_idstringyes–
hallstring––
roomstring––
wingstring––

No output schema declared.

No examples provided.

engram_history ~41

A memory's status (current, superseded or disputed), what replaced it, what it replaced, when and why.

NameTypeReqDescription
memory_idstringyes–

No output schema declared.

No examples provided.

engram_kg_add ~63

Add a triple to the knowledge graph.

NameTypeReqDescription
confidencenumber––
objectstringyes–
predicatestringyes–
subjectstringyes–
valid_fromstring––
valid_untilstring––

No output schema declared.

No examples provided.

engram_kg_invalidate ~49

Invalidate (end) a KG triple.

NameTypeReqDescription
endedstring––
objectstringyes–
predicatestringyes–
subjectstringyes–

No output schema declared.

No examples provided.

engram_kg_query ~42

Query the temporal knowledge graph for an entity.

NameTypeReqDescription
active_onlyboolean––
entitystringyes–
predicatestring––

No output schema declared.

No examples provided.

engram_kg_timeline ~29

Return chronological timeline of all triples for an entity.

NameTypeReqDescription
entitystringyes–

No output schema declared.

No examples provided.

engram_link ~106

Record how two stored memories relate: 'memory_id <relation> target_id'. based_on: target is evidence for memory. derived_from: memory was inferred from target. contradicts: they conflict, undecided. supersedes: memory replaces target. undo=true removes the link. Safe to retry.

NameTypeReqDescription
memory_idstringyes–
reasonstring––
relationstringyes–
target_idstringyes–
undoboolean––

No output schema declared.

No examples provided.

engram_list_rooms ~24

List all rooms in a wing.

NameTypeReqDescription
wingstringyes–

No output schema declared.

No examples provided.

engram_list_wings ~18

List all wings in the château.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

engram_load_room ~41

Return L2 context for a specific room (ES-compressed closets for all halls).

NameTypeReqDescription
roomstringyes–
wingstringyes–

No output schema declared.

No examples provided.

engram_pin ~28

Pin a drawer so it bypasses recency decay.

NameTypeReqDescription
drawer_idstringyes–

No output schema declared.

No examples provided.

engram_recall ~78

The few memories clearly relevant to a message, current versions first, or a note that nothing matched. Call it before answering anything that may depend on past work, decisions or preferences.

NameTypeReqDescription
cwdstring–Project folder, if known (its memories come first)
messagestringyesThe user's message or the task at hand

No output schema declared.

No examples provided.

engram_replay ~49

Return the chronological story of a room (session replay).

NameTypeReqDescription
formatstring––
limitinteger––
roomstringyes–
wingstring––

No output schema declared.

No examples provided.

engram_search ~61

Semantic search across the château. Returns ranked results with recency weighting.

NameTypeReqDescription
ninteger––
no_decayboolean––
querystringyesSearch query
roomstring––
wingstring––

No output schema declared.

No examples provided.

engram_source ~97

Record where a stored memory came from (and optionally the citation or URL).

NameTypeReqDescription
memory_idstringyes–
sourcestringyesWhere it came from: user (the person said it), primary (original document, law, ruling, data), secondary (reporting or analysis), tool (search or program output), inference (your own conclusion)
source_refstring–Citation, URL or document it came from

No output schema declared.

No examples provided.

engram_status ~22

Return château statistics (wings, rooms, drawers, closets).

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

engram_supersede ~92

Record that one stored memory replaces another (e.g. 'we moved to PostgreSQL' replaces 'we use SQLite'). Set undo=true to make the old memory current again. Safe to retry.

NameTypeReqDescription
new_idstring–ID of the memory that replaces it
old_idstringyesID of the outdated memory
reasonstring––
undoboolean––

No output schema declared.

No examples provided.

engram_wake_up ~49

Return L0+L1 cold-start context (~170 tokens). Load this at the start of every session.

NameTypeReqDescription
rebuild_l1boolean––
wingstring––

No output schema declared.

No examples provided.

engram_why ~100

Explain a memory: where it came from, when, whether it is record or inference, the evidence it rests on (and whether that evidence was since corrected or disputed), earlier versions and their evidence, conflicts, and, given the query, why search ranked it. Use it before relying on a conclusion or when asked to justify one.

NameTypeReqDescription
memory_idstringyes–
querystring–The question it was retrieved for (optional)

No output schema declared.

No examples provided.

Install

How do I install the Engram MCP server?

Engram runs locally as a PyPI package, launched with uvx engram-chateau. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

pypi · engram-chateau

# add to Claude Code
claude mcp add tushaebxn-engram -- uvx engram-chateau
Common questions

What is the Engram MCP server?

Engram is an MCP server listed in the public MCP registry as io.github.TushaeBXN/engram. Local, private long-term memory for AI: verbatim, searchable, correctable. No LLM or API key. This page covers its PyPI package (engram-chateau).

Is the Engram MCP server safe to use?

Engram scores 63 out of 100 on VerifyMCP. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the Engram MCP server expose?

Engram exposes 31 tools: engram_search, engram_add_memory, engram_wake_up, engram_load_room, engram_compress, and 26 more. Their descriptions and schemas cost roughly 1,820 tokens of context every time the server is loaded.

Is the Engram MCP server still maintained?

Engram is still listed as active in the MCP registry. We last reached this channel on 4 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the Engram MCP server under?

Engram declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.