Ebb
Ebb — ein agentenzentrierter Wissensgraph
Langzeitgedächtnis für KI-Agenten, aufgebaut als Graph. Relevanz ist aktualitätsgewichtete Verbindungsstärke: Wissen, das wiederverwendet wird, bleibt lebendig, ungenutztes Wissen verfällt und wird archiviert, und nichts wird gelöscht, bis ein Mensch zustimmt. Läuft eingebettet (null Infrastruktur) oder auf Neo4j (Produktion).
Die beiden Mechanismen, um die es aufgebaut ist — verbindungsgewichtete Relevanz und Zeitverfall — sind native Graphoperationen, und beide haben tiefe Vorarbeiten (PageRank/Zentralität; ACT-R-Basisaktivierung und Ausbreitungsaktivierung aus der Kognitionswissenschaft; Spaced-Repetition-Vergessenskurven). Dies ist eine kleine, ehrliche Implementierung dieser Linie, die speziell auf Agentengedächtnis abzielt.
Warum es so aufgebaut ist
1. Engine und Schnittstelle sind getrennt. Der Graphspeicher sitzt hinter einer kleinen Schnittstelle (GraphStore). Agenten und die Bewertungslogik berühren nie eine spezifische Datenbank, sodass Sie denselben Graphen heute auf einer eingebetteten Engine ausführen und später mit einer Umgebungsvariable auf Neo4j umsteigen können.
2. Relevanz ist aktualitätsgewichtet, nicht rohe Verbindungsanzahl. „Mehr Verbindungen = relevanter“ belohnt alte, stark referenzierte Daten für immer — genau das Problem veralteter Daten, das das System beseitigen soll. Hier wird der Beitrag jeder Kante zur Relevanz mit einem Zeitverfallsfaktor multipliziert, der an wann die Verbindung zuletzt verstärkt wurde gekoppelt ist. Eine gestern verstärkte Kante zählt fast voll; eine, die vor sechs Monaten zuletzt berührt wurde, zählt fast nichts. Die Wiederverwendung einer Verbindung (recall/reinforce) setzt ihre Uhr zurück — so verfolgt Relevanz, was tatsächlich lebendig ist, und veraltetes Wissen sinkt von selbst.
Beweis aus dem Demo-Seed-Graphen (python -m ebb.demo):
node raw# activation
decision:outcome-pricing 3 6.116 <- fresh, few links, ranks #1
decision:seat-pricing 11 3.077 <- MOST links, ranks #3
...
note:analysis-* (x10) 1 0.051 <- decayed -> archived (tier 4)Die überholte Pro-Sitzplatz-Entscheidung hat die höchste rohe Verbindungsanzahl im Graphen und rangiert trotzdem auf Platz drei, hinter einer frischen Entscheidung mit einem Drittel so vielen Links. Rohe Anzahl verlor; Aktualität gewann.
Related MCP server: Memory Engine MCP
Was es enthält
Graphmodell — jede Notiz, Entscheidung, Besprechung, Person, Kunde, Fakt ist ein Knoten; jede Referenz ist eine zeitgestempelte, typisierte, gewichtete Kante.
Bewertungs-Engine (
scoring.py) — aktualitätsgewichtete Aktivierung, exponentieller Verfall (konfigurierbare Halbwertszeit), ein Hop der Ausbreitungsaktivierung (ein portabler Ersatz für PageRank) und Tier-Zuweisung. Reine Funktionen, vollständig unit-getestet.Vier Archiv-Tiers — 1 heiß (Standard-Recall) · 2 warm (tieferer Recall) · 3 kalt (archiviert, nur auf Abruf) · 4 eingefroren (wartet auf menschliche Freigabe vor Löschung). Angeheftete Knoten werden nie automatisch archiviert.
MCP-Server (
mcp_server.py) — die Agentenschnittstelle:remember,recall,connect,reinforce,forget,neighbors,pin,maintain,review_queue,stats.Zwei Backends —
KuzuStore(eingebettet, Standard) undNeo4jStore(Produktion), gleiche Schnittstelle, gleiche Cypher-Formen.
Schnellstart (eingebettet — null Infrastruktur)
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
python -m ebb.demo # narrated end-to-end walkthrough
pytest -q # 11 tests, all greenKein Docker, kein Server, keine Ports. Kùzu ist eine In-Process-Graphdatenbank, daher ist Ebb nur ein Ordner (./ebb_db).
Einbinden in einen MCP-Client (z. B. Claude Desktop)
Kopieren Sie den
ebb-Block ausclaude_desktop_config.example.jsonin die MCP-Konfiguration Ihres Clients und korrigieren Sie die absoluten Pfade.Starten Sie den Client neu. Die Ebb-Tools erscheinen im Tools-Menü.
Der Agent kann jetzt
rememberüber Sitzungen hinweg,recallwas relevant ist, undreinforcewas er weiterhin verwendet — mit Verfall und Archivierung, die für ihn übernommen werden.
Produktionsmodus (Neo4j)
docker compose up -d # Neo4j + Graph Data Science + APOC
EBB_BACKEND=neo4j NEO4J_PASSWORD=brainbrain python -m ebb.demoGleicher Code, gleiches Verhalten. Auf Neo4j erhalten Sie zusätzlich die GDS-Bibliothek, sodass der Ausbreitungsaktivierungsdurchlauf in scoring.py zu echtem PageRank / Zentralität / Community-Erkennung aufsteigen kann, wenn die Skalierung es erfordert. (Das Cypher des Neo4j-Backends spiegelt das vollständig getestete Kùzu-Backend; führen Sie pytest gegen eine Live-Instanz aus, bevor Sie ihm in der Produktion vertrauen.)
Das Modell, kurz
Aktivierung eines Knotens = Σ (edge.weight × decay(age_since_last_reinforced)) + read-recency-bonus, plus ein gedämpfter Hop desselben von seinen Nachbarn. Verfall ist eine Halbwertszeit (Standard 30 Tage, einstellbar). Tiers werden auf der Aktivierung geschnitten, die gegen den aktivsten nicht angehefteten Knoten normalisiert wird. recall mischt diese Aktivierung mit Textabgleich der Abfrage und gibt zurück, warum jedes Ergebnis aufgetaucht ist. Alles ist an einem Ort einstellbar — ebb/scoring.py::Config.
Schreiben eines Ingestions-Adapters
Ebb ist quellenagnostisch: alles, was remember/connect aufruft, kann es speisen. Eine Quelle (ein Notizordner, ein Wiki, ein Issue-Tracker) wird zu einem Graphen, indem Dokumente auf Knoten, Links/Erwähnungen auf Kanten und ein Bearbeitungszeitstempel auf die Aktualitätsuhr abgebildet werden. Halten Sie Adapter und ihre Daten aus dem Repo heraus.
Aufbau
src/ebb/
model.py # Node, Edge, tiers
scoring.py # decay, activation, spreading, tiering <- the core
store.py # GraphStore interface
kuzu_store.py # embedded backend (default)
neo4j_store.py # production backend
engine.py # Brain: remember/recall/connect/reinforce/maintain/...
mcp_server.py # agent-facing MCP tools
seed.py # fictional demo graph
demo.py # narrated walkthrough
tests/ # 11 tests: scoring + end-to-end
docker-compose.ymlLizenz
MIT — siehe LICENSE.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables AI agents to manage and query a temporally-aware knowledge graph memory, supporting episode tracking, entity relationships, and semantic search via MCP tools.1
- AlicenseNot gradedqualityAmaintenanceEnables AI assistants to have a living memory with atomic knowledge storage, multi-factor recall, organic decay, automatic learning, and graph traversal via MCP.1MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to have persistent, self-managing memory with bi-temporal supersession, timely forgetting, and recall under a limited context window, using MCP protocol.MIT

Hebbrix MCP Serverofficial
AlicenseAqualityAmaintenanceProvides long-term memory and a temporal knowledge graph for AI agents, enabling persistent memory and reasoning across sessions.261MIT
Related MCP Connectors
Your memory, everywhere AI goes. Build knowledge once, access it via MCP anywhere.
Shared long-term memory vault for AI agents with 20 MCP tools.
Shared, governed long-term memory for AI agents across tools and sessions via MCP and REST.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/jochemverheul/ebb-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server