Skip to main content
Glama

Knowledge Graph Memory Server

MIT License
26,187
56,079
  • Apple
  • Linux

Knowledge Graph Memory Server

Eine grundlegende Implementierung von persistentem Speicher mithilfe eines lokalen Wissensgraphen. Dadurch kann Claude sich Informationen über den Benutzer über Chats hinweg merken.

Kernkonzepte

Entitäten

Entitäten sind die primären Knoten im Wissensgraphen. Jede Entität verfügt über:

  • Ein eindeutiger Name (Kennung)
  • Ein Entitätstyp (z. B. „Person“, „Organisation“, „Ereignis“)
  • Eine Liste von Beobachtungen

Beispiel:

{ "name": "John_Smith", "entityType": "person", "observations": ["Speaks fluent Spanish"] }

Beziehungen

Relationen definieren gerichtete Verbindungen zwischen Entitäten. Sie werden immer im Aktiv ausgedrückt und beschreiben, wie Entitäten miteinander interagieren oder in Beziehung zueinander stehen.

Beispiel:

{ "from": "John_Smith", "to": "Anthropic", "relationType": "works_at" }

Beobachtungen

Beobachtungen sind diskrete Informationen über eine Entität. Sie sind:

  • Als Zeichenfolgen gespeichert
  • An bestimmte Entitäten angehängt
  • Kann unabhängig hinzugefügt oder entfernt werden
  • Sollte atomar sein (eine Tatsache pro Beobachtung)

Beispiel:

{ "entityName": "John_Smith", "observations": [ "Speaks fluent Spanish", "Graduated in 2019", "Prefers morning meetings" ] }

API

Werkzeuge

  • Entitäten erstellen
    • Erstellen Sie mehrere neue Entitäten im Wissensgraphen
    • Eingabe: entities (Array von Objekten)
      • Jedes Objekt enthält:
        • name (Zeichenfolge): Entitätskennung
        • entityType (Zeichenfolge): Typklassifizierung
        • observations (Zeichenfolge[]): Zugehörige Beobachtungen
    • Ignoriert Entitäten mit vorhandenen Namen
  • Beziehungen erstellen
    • Erstellen Sie mehrere neue Beziehungen zwischen Entitäten
    • Eingabe: relations (Array von Objekten)
      • Jedes Objekt enthält:
        • from (Zeichenfolge): Name der Quell-Entität
        • to (Zeichenfolge): Name der Zielentität
        • relationType (Zeichenfolge): Beziehungstyp im Aktiv
    • Überspringt doppelte Beziehungen
  • Beobachtungen hinzufügen
    • Hinzufügen neuer Beobachtungen zu vorhandenen Entitäten
    • Eingabe: observations (Array von Objekten)
      • Jedes Objekt enthält:
        • entityName (Zeichenfolge): Zielentität
        • contents (Zeichenfolge[]): Neue hinzuzufügende Beobachtungen
    • Gibt hinzugefügte Beobachtungen pro Entität zurück
    • Schlägt fehl, wenn die Entität nicht existiert
  • Entitäten löschen
    • Entfernen von Entitäten und ihren Beziehungen
    • Eingabe: entityNames (string[])
    • Kaskadierendes Löschen von zugehörigen Relationen
    • Stiller Vorgang, wenn die Entität nicht existiert
  • Beobachtungen löschen
    • Entfernen Sie bestimmte Beobachtungen von Entitäten
    • Eingabe: deletions (Array von Objekten)
      • Jedes Objekt enthält:
        • entityName (Zeichenfolge): Zielentität
        • observations (Zeichenfolge[]): Zu entfernende Beobachtungen
    • Leiser Betrieb, wenn keine Beobachtung vorhanden ist
  • delete_relations
    • Entfernen Sie bestimmte Beziehungen aus dem Diagramm
    • Eingabe: relations (Array von Objekten)
      • Jedes Objekt enthält:
        • from (Zeichenfolge): Name der Quell-Entität
        • to (Zeichenfolge): Name der Zielentität
        • relationType (Zeichenfolge): Beziehungstyp
    • Stiller Vorgang, wenn keine Beziehung besteht
  • Diagramm lesen
    • Lesen Sie den gesamten Wissensgraphen
    • Keine Eingabe erforderlich
    • Gibt die vollständige Graphstruktur mit allen Entitäten und Beziehungen zurück
  • Suchknoten
    • Suche nach Knoten basierend auf der Abfrage
    • Eingabe: query (Zeichenfolge)
    • Sucht in:
      • Entitätsnamen
      • Entitätstypen
      • Beobachtungsinhalt
    • Gibt übereinstimmende Entitäten und ihre Beziehungen zurück
  • offene_Knoten
    • Abrufen bestimmter Knoten nach Namen
    • Eingabe: names (Zeichenfolge[])
    • Widerrufsfolgen:
      • Angeforderte Entitäten
      • Beziehungen zwischen angefragten Entitäten
    • Überspringt stillschweigend nicht vorhandene Knoten

Verwendung mit Claude Desktop

Aufstellen

Fügen Sie dies zu Ihrer claude_desktop_config.json hinzu:

Docker
{ "mcpServers": { "memory": { "command": "docker", "args": ["run", "-i", "-v", "claude-memory:/app/dist", "--rm", "mcp/memory"] } } }
NPX
{ "mcpServers": { "memory": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-memory" ] } } }
NPX mit benutzerdefinierter Einstellung

Der Server kann mit den folgenden Umgebungsvariablen konfiguriert werden:

{ "mcpServers": { "memory": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-memory" ], "env": { "MEMORY_FILE_PATH": "/path/to/custom/memory.json" } } } }
  • MEMORY_FILE_PATH : Pfad zur JSON-Datei im Speicher (Standard: memory.json im Serververzeichnis)

VS Code-Installationsanweisungen

Verwenden Sie für eine schnelle Installation eine der folgenden Ein-Klick-Installationsschaltflächen:

Für die manuelle Installation fügen Sie den folgenden JSON-Block zu Ihrer Benutzereinstellungsdatei (JSON) in VS Code hinzu. Drücken Sie dazu Ctrl + Shift + P und geben Sie Preferences: Open Settings (JSON) ein.

Optional können Sie es einer Datei namens .vscode/mcp.json in Ihrem Arbeitsbereich hinzufügen. Dadurch können Sie die Konfiguration mit anderen teilen.

Beachten Sie, dass der mcp Schlüssel in der Datei .vscode/mcp.json nicht benötigt wird.

NPX
{ "mcp": { "servers": { "memory": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-memory" ] } } } }
Docker
{ "mcp": { "servers": { "memory": { "command": "docker", "args": [ "run", "-i", "-v", "claude-memory:/app/dist", "--rm", "mcp/memory" ] } } } }

Systemaufforderung

Die Eingabeaufforderung zur Speichernutzung hängt vom Anwendungsfall ab. Durch Ändern der Eingabeaufforderung kann das Modell die Häufigkeit und Art der erstellten Speicher bestimmen.

Hier ist ein Beispiel für eine Chat-Personalisierung. Sie können diese Eingabeaufforderung im Feld „Benutzerdefinierte Anweisungen“ eines Claude.ai-Projekts verwenden.

Follow these steps for each interaction: 1. User Identification: - You should assume that you are interacting with default_user - If you have not identified default_user, proactively try to do so. 2. Memory Retrieval: - Always begin your chat by saying only "Remembering..." and retrieve all relevant information from your knowledge graph - Always refer to your knowledge graph as your "memory" 3. Memory - While conversing with the user, be attentive to any new information that falls into these categories: a) Basic Identity (age, gender, location, job title, education level, etc.) b) Behaviors (interests, habits, etc.) c) Preferences (communication style, preferred language, etc.) d) Goals (goals, targets, aspirations, etc.) e) Relationships (personal and professional relationships up to 3 degrees of separation) 4. Memory Update: - If any new information was gathered during the interaction, update your memory as follows: a) Create entities for recurring organizations, people, and significant events b) Connect them to the current entities using relations b) Store facts about them as observations

Gebäude

Docker:

docker build -t mcp/memory -f src/memory/Dockerfile .

Lizenz

Dieser MCP-Server ist unter der MIT-Lizenz lizenziert. Das bedeutet, dass Sie die Software unter den Bedingungen der MIT-Lizenz frei verwenden, ändern und verbreiten dürfen. Weitere Informationen finden Sie in der LICENSE-Datei im Projekt-Repository.

-
security - not tested
A
license - permissive license
-
quality - not tested

local-only server

The server can only run on the client's local machine because it depends on local resources.

Eine grundlegende Implementierung von persistentem Speicher mithilfe eines lokalen Wissensgraphen. Dadurch kann Claude sich Informationen über den Benutzer über Chats hinweg merken.

  1. Kernkonzepte
    1. Entitäten
    2. Beziehungen
    3. Beobachtungen
  2. API
    1. Werkzeuge
  3. Verwendung mit Claude Desktop
    1. Aufstellen
  4. VS Code-Installationsanweisungen
    1. NPX
    2. Docker
    3. Systemaufforderung
    4. Gebäude
    5. Lizenz

Related MCP Servers

  • A
    security
    A
    license
    A
    quality
    An improved implementation of persistent memory using a local knowledge graph with a customizable --memory-path. This lets Claude remember information about the user across chats.
    Last updated -
    9
    156
    247
    JavaScript
    MIT License
    • Apple
  • A
    security
    F
    license
    A
    quality
    This MCP server provides persistent memory integration for chat applications by utilizing a local knowledge graph to remember user information across interactions.
    Last updated -
    9
    26,187
    1
    JavaScript
  • A
    security
    A
    license
    A
    quality
    Enhances user interaction through a persistent memory system that remembers information across chats and learns from past errors by utilizing a local knowledge graph and lesson management.
    Last updated -
    13
    26,187
    34
    JavaScript
    MIT License
  • A
    security
    A
    license
    A
    quality
    A memory server for Claude that stores and retrieves knowledge graph data in DuckDB, enhancing performance and query capabilities for conversations with persistent user information.
    Last updated -
    8
    30
    40
    TypeScript
    MIT License
    • Apple

View all related MCP servers

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/modelcontextprotocol/knowledge-graph-memory-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server