Neo4j의 메모리 MCP 서버를 Anthropic의 서버와 비교하며 거의 완전한 드롭인 대체품임을 설명합니다. 주요 차이점은 함수 이름(find_nodes vs open_nodes)뿐이며, 두 서버의 스키마는 동일합니다.
[00:00]
Neo4j의 메모리 MCP 서버를 소개하며, 이것이 Anthropic의 지식 그래프 메모리 MCP 서버를 거의 완벽하게 대체할 수 있는 솔루션임을 설명합니다.
[00:41]
메모리 서버의 핵심 기능을 설명합니다. 장기적인 대화 기억을 제공하면서도 컨텍스트 윈도우를 채우지 않으며, 엔티티 생성, 관찰, 관계라는 세 가지 구성 요소를 가지고 있습니다.
서버가 제공하는 세 가지 핵심 요소인 엔티티(명사), 관찰(사실), 관계를 설명합니다. AI가 대화 중 새 엔티티를 생성하고, 속성을 추출해 연결하는 방식을 다룹니다.
이전 영상에서 다룬 MCP 서버 설치 과정을 간략히 언급하고, 오늘은 여기에 메모리 서버를 추가 구성하는 방법에 집중한다고 안내합니다.
[01:18]
이전에 MCP 서버 설치에 대한 영상을 제작했으며, 오늘은 메모리 서버를 추가하고 설정하여 지속적으로 실행되도록 하는 방법을 보여줄 것이라고 안내합니다.
[01:35]
Claude에서 개발자 탭을 통해 config.json을 편집하여 Neo4j 데스크톱을 사용한 로컬 Neo4j 인스턴스 설정을 완료했음을 보여줍니다.
config.json 파일을 수정해 로컬 Neo4j 데스크탑 인스턴스에 연결하는 방법을 보여줍니다. Developer 탭에서 설정을 적용해 도구가 메모리 서버를 호출하도록 준비합니다.
[01:58]
Claude 설정에서 일반 탭의 개인적 선호사항 섹션에서 Anthropic의 개인화 프롬프트를 추가하여 Claude가 자동으로 메모리 도구를 사용하도록 설정했음을 설명합니다.
Claude 일반 설정의 개인화 탭에 Anthropic 리포지토리에서 제공하는 사용자 프롬프트를 추가해 AI가 자동으로 메모리 서버를 사용하게 만듭니다.
[02:57]
실제 테스트를 위해 FastAPI를 좋아하고 Python 코드 작성에 능숙하다는 개인 정보를 Claude에게 전달하여, 메모리 서버가 제대로 작동하는지 확인합니다.
FastAPI 사용 선호, Python 수준 등을 AI에 말해 지식 그래프에 정보를 저장하게 합니다. 친구 프로젝트(Neo4j + Weav8) 연결 관계를 생성하는 과정을 시연합니다.
[03:30]
Claude가 지식 그래프를 확인했지만 사용자 정보를 실제로 기록하지 않아서, 강제로 기억하도록 유도하는 프롬프트를 시도합니다.
[03:45]
친구가 Neo4j와 Weave8을 사용해서 프로젝트를 구축하고 있다고 언급했더니, Claude가 빈 그래프에서 엔티티와 관계를 생성했습니다.
[04:14]
데이터베이스를 확인해보니 사용자 정보(FastAPI 선호, Python 스킬, Weave 프로젝트 친구)와 관계가 생성되어 지식 그래프가 시작되었습니다.
Cursor에서도 유사하게 MCP 설정을 추가한 뒤, 사용자 규칙 섹션에 개인화 프롬프트를 붙여 기본 메모리 도구로 활용하는 과정을 설명합니다.
[04:38]
Cursor에서도 동일한 MCP 구성을 사용하며, 설정의 사용자 규칙 섹션에 Anthropic의 시스템 프롬프트를 붙여넣어 메모리 기능을 활성화할 수 있습니다.
[05:23]
Cursor에게 친구를 위한 Hello World 앱을 요청했더니 FastAPI를 사용해서 즉시 서버를 구동했고, 친구가 관심 있는 Neo4j와 Weave8 데이터베이스 정보를 그래프에서 추출해 활용했습니다.
Neo4j 메모리 MCP 서버의 핵심 기능과 설정 방법을 짚고, 실제 대화 예시를 통해 지식 그래프 구축 과정을 확인했습니다. 다음 영상 예고와 함께 인사로 마무리합니다.
[00:00]
안녕하세요 여러분, 환영합니다. 오늘은
[00:02]
Neo4j의 메모리 MCP 서버를 소개해드리겠습니다.
[00:06]
네, 좀 복잡해 보일 수 있습니다.
[00:08]
오늘 제가 소개할 것은
[00:10]
이 특별한 MCP 서버인데, Anthropic의
[00:13]
자체 지식 그래프 메모리 MCP 서버를
[00:16]
거의 완벽하게 대체할 수 있는 솔루션입니다. 두
[00:20]
서버 모두 거의 동일한
[00:23]
9개의 도구를 가지고 있습니다. 유일한 차이점은
[00:26]
Neo4j 서버에서는 find nodes라는
[00:30]
하나의 함수가 있고, 이것이
[00:33]
Anthropic 버전의 open
[00:37]
nodes에 해당한다는 것입니다. 그 외에는 두 서버가
[00:41]
완전히 동일한 스키마를 가지고 있습니다. 이
[00:43]
서버의 기능은 도구가 기본적으로
[00:47]
장기적인 대화
[00:48]
기억을 가질 수 있게 하면서도
[00:51]
전체 채팅 히스토리로 컨텍스트 윈도우를
[00:53]
채우지 않아도 되게 하는 것입니다. 이것은
[00:55]
세 가지 구성 요소가 있습니다. 첫 번째는 엔티티 생성입니다. 이것들은
[00:59]
기본적으로 명사들입니다. 사람, 장소,
[01:01]
사물에 대한 노드를 생성합니다. 그리고
[01:03]
관찰도 있습니다. 관찰은
[01:06]
이러한 엔티티에 대한 사실들입니다. 그리고
[01:08]
마지막 부분은 관계입니다. 이것은
[01:11]
서로 다른 엔티티들 간의 관계를
[01:13]
연결하려고 시도하며 때로는
[01:14]
관찰과도 연결합니다. 만약
[01:16]
추출되었다면 말이죠. 저는 이미
[01:18]
Cursor와 Claude 모두에서 MCP
[01:21]
서버를 설치하는 방법에 대한 이전 영상을 만들었습니다. 그래서
[01:24]
오늘은 그 위에
[01:26]
메모리 서버를 추가하고
[01:28]
설정하는 방법을 보여드려서
[01:30]
메모리가 기본적으로
[01:32]
지속적으로 실행되도록 하겠습니다. 자, 그럼
[01:36]
먼저 Claude로 넘어가보겠습니다.
[01:37]
저는 이미 개발자
[01:40]
탭을 사용해서 백그라운드에서 MCP 서버를
[01:42]
설정하고 config.json
[01:46]
파일을 편집했습니다. 이것이
[01:49]
Neo4j 데스크톱을 사용해서 로컬 Neo4j 인스턴스에
[01:52]
접근하기 위한 설정입니다. 이것은 바로
[01:56]
작동할 것입니다. 하지만 다시 말하지만 저는
[01:58]
Claude에게 명시적으로 기억하거나
[02:01]
이 지식 그래프나
[02:02]
메모리 도구에서 정보를 가져오라고 요청해야 합니다. 그래서
[02:05]
이를 해결하고 Claude가 항상
[02:07]
이것을 하도록 하려면 설정으로 가서
[02:11]
일반 탭으로 가서 Claude
[02:13]
설정을 클릭하고
[02:15]
설정합니다. 여기에 프로필 아래에
[02:17]
Claude가 응답에서 고려해야 할
[02:19]
개인적 선호사항에 대한 섹션이 있습니다. 이제
[02:22]
Anthropic 자체에서 그들의 메모리
[02:26]
서버 저장소에서, 여기 들어가서
[02:29]
아래쪽으로 스크롤하면
[02:31]
기본적으로 개인화 프롬프트가 있습니다.
[02:35]
그리고 이 개인화 사용자 프롬프트를
[02:38]
추가하면 Claude나 다른
[02:41]
AI 도구가 이 메모리
[02:43]
도구를 사용하도록 지시할 것입니다. 좋습니다, 그럼 이것을 복사해서
[02:45]
Claude에 삽입하겠습니다. 아,
[02:47]
이미 여기 해놨네요. 그래서
[02:50]
이미 저장되어 있습니다. 이제 만약 제가
[02:52]
Claude와 채팅을 한다면
[02:54]
기본적으로 메모리 서버를
[02:57]
사용해야 합니다. 그럼 간단히
[03:00]
음, 저는 FastAPI 사용을 정말 좋아하고
[03:06]
그리고
[03:09]
저는 작성하는 데 꽤 괜찮습니다
[03:14]
OOP... 영어가 아니라 Python
[03:17]
코드를 말이죠. 이것은 저에 대한 사실입니다.
[03:20]
바라건대 이것이... 네, 실제로 인식합니다
[03:23]
이것이 대화하고 있는 사람에 대한
[03:26]
정보이며 유지해야 할
[03:27]
정보라는 것을 말이죠. 그래서 지식 그래프를 확인했습니다
[03:30]
그래프를 확인해서 기존 정보가 있는지
[03:32]
살펴봤는데, 사용자인 저에 대한 정보는
[03:34]
실제로는 기록하지 않았네요. 그래서 여기서
[03:37]
기억하도록 유도하는 프롬프트를 해보겠습니다.
[03:40]
음, 제 친구 중 한 명이
[03:43]
Neo4j와
[03:45]
Weave8을 사용해서 프로젝트를 만들고 있어요.
[03:48]
[04:03]
좋네요. Claude가 그래프를 읽었는데
[04:07]
현재 아무것도 없는 상태지만
[04:09]
데이터로 엔티티와 관계를
[04:11]
생성하기로 결정했네요.
[04:12]
데이터베이스로 돌아가서
[04:14]
확인해보면 실제로
[04:17]
사용자인 저에 대한 정보를 생성했습니다.
[04:19]
제가 FastAPI를 좋아하고
[04:22]
Python을 잘 다루며
[04:25]
Weave를 사용해서 프로젝트를 만들고 있는
[04:27]
친구가 있고 우리를 친구로 연결했네요.
[04:31]
이제 지식 그래프의 시작이네요.
[04:33]
다음으로 Cursor로
[04:36]
넘어가보겠습니다.
[04:38]
여기에도 동일한 MCP 구성을 추가했습니다.
[04:41]
Cursor가 기본적으로 메모리를 사용하는
[04:44]
동일한 프로토콜을 사용하려면
[04:48]
Cursor 설정으로
[04:51]
가면 됩니다.
[04:54]
여기 사용자 규칙 아래
[04:57]
규칙 섹션을 클릭하면
[04:59]
Anthropic의 시스템 프롬프트나
[05:02]
자신만의 버전의
[05:04]
시스템 프롬프트를 동일하게
[05:07]
붙여넣으면 됩니다.
[05:10]
자동으로 저장될 것입니다.
[05:12]
Cursor에게 제 친구를 위한
[05:17]
Hello World 애플리케이션을 만들어달라고
[05:23]
요청해보겠습니다.
[05:27]
여기서 FastAPI를
[05:30]
사용했네요.
[05:33]
바로 시작했네요. 서버를
[05:36]
실행했습니다. 훌륭하네요.
[05:39]
이 앱을 제 친구가 관심 있어하는
[05:45]
데이터베이스를 사용하도록 수정해보겠습니다.
[05:52]
좋네요. Neo4j와
[05:55]
Weave8을 사용하고 싶어한다는 것을
[05:58]
인식했네요. 그래프에서
[06:00]
추출했습니다. Weave 구성은 여기에
[06:04]
보이지 않지만 어쨌든 좋네요.
[06:07]
Neo4j의 메모리 MCP 서버에 대한
[06:08]
간단한 소개였습니다. 이것은 하나의 예시이고
[06:14]
도움이 되기를 바랍니다.
[06:16]
제 이름은 Jason Coup입니다.
[06:19]
즐거운 코딩 되시고 다음 영상에서
[06:21]
만나요.