Knowledge Graph Memory Server

by itseasy21
Verified

local-only server

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

지식 그래프 메모리 서버

사용자 정의 가능한 메모리 경로를 갖춘 로컬 지식 그래프를 사용하여 지속적 메모리를 개선하여 구현했습니다.

이를 통해 클로드는 채팅 전반에서 사용자에 대한 정보를 기억할 수 있습니다.

[!NOTE] 이것은 원래 메모리 서버 의 포크이며 임시 메모리 npx 설치 방법을 사용하지 않도록 의도되었습니다.

서버 이름

지엑스피1

핵심 개념

엔티티

엔티티는 지식 그래프의 주요 노드입니다. 각 엔티티는 다음을 갖습니다.

  • 고유한 이름(식별자)
  • 엔터티 유형(예: "사람", "조직", "이벤트")
  • 관찰 목록
  • 생성 날짜 및 버전 추적

버전 추적 기능은 시간이 지남에 따라 지식이 어떻게 발전했는지에 대한 역사적 맥락을 유지하는 데 도움이 됩니다.

예:

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

처지

관계는 엔티티 간의 방향성 있는 연결을 정의합니다. 관계는 항상 능동태로 저장되며 엔티티 간의 상호 작용 또는 관계를 설명합니다. 각 관계는 다음을 포함합니다.

  • 소스 및 대상 엔터티
  • 관계 유형
  • 생성 날짜 및 버전 정보

이 버전 관리 시스템은 시간이 지남에 따라 엔터티 간의 관계가 어떻게 발전하는지 추적하는 데 도움이 됩니다.

예:

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

관찰

관찰은 개체에 대한 개별적인 정보입니다. 관찰은 다음과 같습니다.

  • 문자열로 저장됨
  • 특정 엔터티에 첨부됨
  • 독립적으로 추가하거나 제거할 수 있습니다
  • 원자적이어야 함(관찰당 하나의 사실)

예:

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

API

도구

  • 엔티티 생성
    • 지식 그래프에 여러 개의 새 엔터티 만들기
    • 입력: entities (객체 배열)
      • 각 객체에는 다음이 포함됩니다.
        • name (문자열): 엔터티 식별자
        • entityType (문자열): 유형 분류
        • observations (문자열[]): 연관된 관찰
    • 기존 이름이 있는 엔터티를 무시합니다.
  • 관계 생성
    • 엔터티 간에 여러 개의 새로운 관계를 생성합니다.
    • 입력: relations (객체 배열)
      • 각 객체에는 다음이 포함됩니다.
        • from (문자열): 소스 엔터티 이름
        • to (문자열): 대상 엔터티 이름
        • relationType (문자열): 활성태의 관계 유형
    • 중복된 관계를 건너뜁니다.
  • 관찰 추가
    • 기존 엔터티에 새로운 관찰 추가
    • 입력: observations (객체 배열)
      • 각 객체에는 다음이 포함됩니다.
        • entityName (문자열): 대상 엔티티
        • contents (문자열[]): 추가할 새로운 관찰
    • 엔터티당 추가된 관찰 결과를 반환합니다.
    • 엔터티가 존재하지 않으면 실패합니다.
  • 엔티티 삭제
    • 엔터티와 해당 관계 제거
    • 입력: entityNames (string[])
    • 연관된 관계의 계단식 삭제
    • 엔터티가 존재하지 않으면 자동 작업
  • 관찰 삭제
    • 엔터티에서 특정 관찰을 제거합니다.
    • 입력: deletions (객체 배열)
      • 각 객체에는 다음이 포함됩니다.
        • entityName (문자열): 대상 엔티티
        • observations (string[]): 제거할 관찰
    • 관찰이 존재하지 않으면 조용한 작동
  • 관계 삭제
    • 그래프에서 특정 관계 제거
    • 입력: relations (객체 배열)
      • 각 객체에는 다음이 포함됩니다.
        • from (문자열): 소스 엔터티 이름
        • to (문자열): 대상 엔터티 이름
        • relationType (문자열): 관계 유형
    • 관계가 존재하지 않으면 자동 작업
  • 읽기_그래프
    • 지식 그래프 전체를 읽어보세요
    • 입력이 필요하지 않습니다
    • 모든 엔터티와 관계가 포함된 완전한 그래프 구조를 반환합니다.
  • 검색_노드
    • 쿼리 기반 노드 검색
    • 입력: query (문자열)
    • 검색 범위:
      • 엔터티 이름
      • 엔터티 유형
      • 관찰 내용
    • 일치하는 엔터티와 해당 관계를 반환합니다.
  • 오픈 노드
    • 이름으로 특정 노드 검색
    • 입력: names (string[])
    • 보고:
      • 요청된 엔터티
      • 요청된 엔터티 간의 관계
    • 존재하지 않는 노드를 자동으로 건너뜁니다.

커서, 클라인 또는 클로드 데스크톱 사용

설정

mcp.json 또는 claude_desktop_config.json에 다음을 추가하세요.

{ "mcpServers": { "memory": { "command": "npx", "args": [ "-y", "@itseasy21/mcp-knowledge-graph" ], "env": { "MEMORY_FILE_PATH": "/path/to/your/projects.jsonl" } } } }

Smithery를 통해 설치

Smithery 를 통해 Claude Desktop용 Knowledge Graph Memory Server를 자동으로 설치하려면:

npx -y @smithery/cli install @itseasy21/mcp-knowledge-graph --client claude

사용자 정의 메모리 경로

메모리 파일에 대한 사용자 지정 경로를 두 가지 방법으로 지정할 수 있습니다.

  1. 명령줄 인수 사용:
{ "mcpServers": { "memory": { "command": "npx", "args": ["-y", "@itseasy21/mcp-knowledge-graph", "--memory-path", "/path/to/your/memory.jsonl"] } } }
  1. 환경 변수 사용:
{ "mcpServers": { "memory": { "command": "npx", "args": ["-y", "@itseasy21/mcp-knowledge-graph"], "env": { "MEMORY_FILE_PATH": "/path/to/your/memory.jsonl" } } } }

경로가 지정되지 않으면 서버 설치 디렉토리의 memory.jsonl이 기본값으로 사용됩니다.

시스템 프롬프트

메모리 활용 프롬프트는 사용 사례에 따라 달라집니다. 프롬프트를 변경하면 모델이 생성되는 메모리의 빈도와 유형을 파악하는 데 도움이 됩니다.

다음은 채팅 개인화 프롬프트 예시입니다. Claude.ai 프로젝트 의 "맞춤 설정 지침" 필드에서 이 프롬프트를 사용할 수 있습니다.

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

특허

이 MCP 서버는 MIT 라이선스에 따라 라이선스가 부여됩니다. 즉, MIT 라이선스의 조건에 따라 소프트웨어를 자유롭게 사용, 수정 및 배포할 수 있습니다. 자세한 내용은 프로젝트 저장소의 LICENSE 파일을 참조하세요.

-
security - not tested
F
license - not found
-
quality - not tested

로컬 지식 그래프를 사용하여 클로드의 지속적 메모리를 구현하여 AI가 사용자 정의 저장 위치를 통해 대화 전반에 걸쳐 사용자에 대한 정보를 기억할 수 있도록 했습니다.

  1. Server Name
    1. Core Concepts
      1. Entities
      2. Relations
      3. Observations
    2. API
      1. Tools
    3. Usage with Cursor, Cline or Claude Desktop
      1. Setup
      2. Installing via Smithery
      3. Custom Memory Path
      4. System Prompt
    4. License
      ID: az1ufmvfg3