create_entitiesLABSCO SUMMARY
Memory that ages, with the history kept.
Two ideas set this apart from a note store: relations carry a confidence that decays over time unless something reinforces them, and nothing is overwritten, so you can ask what the graph believed at an earlier moment. The cost is real infrastructure — a Neo4j instance and an embedding key — rather than a file on disk.
What it is
A knowledge-graph memory server backed by Neo4j, holding entities and typed relations with vector embeddings, complete version history and rich metadata.
What you get
- Entities: create_entities, add_observations, delete_entities and delete_observations
- Relations carrying strength, confidence and custom metadata: create_relations, get_relation, update_relation and delete_relations
- Graph access: read_graph, search_nodes and open_nodes
- semantic_search finds entities by meaning, with a similarity threshold, entity-type filters, and a hybrid mode that blends keyword and vector recall at a weight you choose
- get_entity_embedding returns the vector for a single entity
- Time travel: get_entity_history and get_relation_history for full version history, get_graph_at_time for the graph as it stood at a given moment
- get_decayed_graph applies time-based confidence decay, so relations nothing has reinforced lose certainty on a half-life you configure
- Updates create new versions instead of overwriting, and every change is timestamped
Requirements
A Neo4j instance recent enough for vector search — desktop or container — with its connection details and credentials. Node to run the server. Semantic search generates embeddings through OpenAI, so it needs an API key; without one, embedding generation is mocked and only useful for testing.
Setup effort
One command plus a key — npx -y @gannonh/memento-mcp, then supply credentials
USE CASES
Recalling what was said weeks ago
Search by meaning rather than exact words, then open the entities the search points at.
Building up what you know about a person or system
Create the entity, keep adding observations as you learn them, and connect it to the things it relates to.
Judging how much to trust an old fact
Read the graph with decay applied and see which relations have lost confidence since anything last confirmed them.
Reconstructing what you believed at the time
Ask for the graph as of a past moment, or the full version history of one entity.
Correcting the record without losing it
Update the relation or drop the wrong observation — the earlier version stays in the history.
17 tools
Listed in project docs. Your client may show a different list.
add_observationsdelete_entitiesdelete_observationscreate_relationsget_relationupdate_relationdelete_relationsread_graphsearch_nodesopen_nodessemantic_searchget_entity_embeddingget_entity_historyget_relation_historyget_graph_at_timeget_decayed_graphBEFORE YOU INSTALL
What to know first
Tools you get
17 tools named in the project's documentation.
Requires
- npx on PATH
- OPENAI_API_KEY in your environment
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
Server setup
npx -y @gannonh/memento-mcpMCP Clients
Claude Desktop
{
"mcpServers": {
"memento": {
"command": "npx",
"args": [
"-y",
"@gannonh/memento-mcp"
],
"env": {
"MEMORY_STORAGE_TYPE": "neo4j",
"NEO4J_URI": "bolt://127.0.0.1:7687",
"NEO4J_USERNAME": "neo4j",
"NEO4J_PASSWORD": "memento_password",
"NEO4J_DATABASE": "neo4j",
"NEO4J_VECTOR_INDEX": "entity_embeddings",
"NEO4J_VECTOR_DIMENSIONS": "1536",
"NEO4J_SIMILARITY_FUNCTION": "cosine",
"OPENAI_API_KEY": "<YOUR_OPENAI_API_KEY>",
"OPENAI_EMBEDDING_MODEL": "text-embedding-3-small",
"DEBUG": "true"
}
}
}
}