코드를 한 줄도 작성하지 않고 교육 커리큘럼 정보에서 Knowledge Graph를 추출하고 생성한다구요?
오늘날의 데이터 중심 세상에서 Knowledge Graph는 다양한 엔터티 간의 복잡한 관계를 캡처하고 쿼리하는 강력한 방법으로 떠오르고 있어요.
원래 Knowledge Graph를 만들려면 코딩 지식이 엄청 많이 필요했지만, 이제 환경이 바뀌고 있다는 사실! 저는 최근 Anthropic의 Claude AI 어시스턴트와 Neo4j Graph Database를 사용해서 Model Context Protocol을 활용해 봤는데요. 놀랍게도 코드 한 줄도 작성하지 않았어요.
이번 글에서는 AI 비서와의 대화를 통해 교육 시스템, 특히 학교의 시험 일정 및 커리큘럼 모델링에 대한 포괄적인 Knowledge Graph를 만든 경험을 공유해볼게요.
Model Context Protocol이란 무엇일까요?
The Model Context Protocol은 AI 모델이 외부 도구 및 데이터 소스와 상호 작용할 수 있도록 하는 새로운 표준이에요. 이걸 사용하면 Claude와 같은 AI 어시스턴트가 데이터베이스 같은 시스템에서 명령을 실행해서 훈련 데이터 이상의 확장된 기능을 제공할 수 있게 되죠. 더 자세한 내용은 Model Context Protocol 문서를 참고하세요.
간단하게 말하면, MCP를 사용하면 Claude가 Neo4j 데이터베이스를 직접 "보고" 상호 작용할 수 있다는 거예요. 더 자세한 내용은 Claude는 MCP를 통해 Neo4j와 대화합니다를 확인해 보세요.
전제조건
이 접근 방식을 따라 하려면 다음이 필요해요.
- 컨테이너에서 Neo4j를 실행하기 위해
- Neo4j Database를 Docker 컨테이너나 클라우드 인스턴스로 준비해요.
- Python 종속성 설치를 위해 uv package manager를 준비해요.
macOS/Linux:
curl -LsSf https://astral.sh/uv/install.sh | sh
Windows:
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
4. Claude for Desktop
5. MCP 플러그인 구성: Claude를 Neo4j에 연결하기 위해 mcp-neo4j-cypher 서버를 Neo4j에서 제공하는 방식으로 사용할 거예요.
MCP 구성 설정
이 작업의 핵심은 MCP 구성을 올바르게 설정하는 건데요. 제가 사용한 구성은 다음과 같아요.
"neo4j": {
"command": "/Users/<username>/.local/bin/uvx", # **Replace this** with the full path to your 'uv' executable
"args": [
"mcp-neo4j-cypher",
"--db-url",
"bolt://localhost",
"--username",
"neo4j",
"--password",
"password"
]
}
클라우드 구성 및 MCP 플러그인 가져오기에 대한 자세한 내용은 에서 확인할 수 있어요.
이 구성은 Bolt 프로토콜을 사용해서 Claude를 로컬에서 실행되는 Neo4j 인스턴스에 연결하는 방식이에요. 설정에 따라 `uvx` 실행 파일의 경로와 데이터베이스 사용자 인증 정보를 조정해야 하는 점, 잊지 마세요!
설정 확인
Claude for Desktop을 실행하면 Neo4j 관련 새로운 도구가 표시될 거예요.
- get-neo4j-스키마: Neo4j 데이터베이스의 Schema를 검색하는 도구
- 읽기-neo4j-사이퍼: Graph Database에서 정보를 Query하는 도구
- 쓰기-neo4j-사이퍼: 데이터베이스의 그래프 데이터를 업데이트하는 도구
이 도구들이 Claude for Desktop 인터페이스에 나타난다면, Neo4j와 MCP가 성공적으로 통합된 것을 의미해요.
사례 연구: 교육 시스템 Knowledge Graph 구축
이 접근 방식의 강력함을 보여주기 위해, 저는 교육 시스템, 특히 시험 일정과 커리큘럼을 모델링해보기로 결정했어요. Brainiacs Tutoring Centre의 4B학년 2학기 시험을 예시로 사용했죠.
필수 GraphRAG
Knowledge Graph를 통해 RAG의 잠재력을 최대한 활용해보세요! 한정된 기간 동안 Manning에서 제공하는 최종 가이드를 무료로 받아볼 수 있어요.
1단계: 기본 Schema 만들기
첫 번째 단계는 Graph Database의 기본 구조를 만드는 것이었어요. Claude와의 대화를 통해 모델링하고 싶은 개체와 관계에 대해 설명했죠.
- : 브레이니악스 튜터링 센터
- : 4학년, B부
- : 수학, 영어, 과학 등
- : 날짜가 포함된 예정된 시험
- : 과목별 구체적인 커리큘럼 부분
복잡한 Query를 작성하는 대신, Claude에게 제가 원하는 내용을 간단히 설명한 다음 Neo4j Cypher 명령을 생성하고 실행해서 이 구조를 만들었어요.
2단계: Entity 및 Relationship 추가
Schema를 설정한 후, 학교 문서의 실제 데이터로 Database를 채워야 했어요. Claude는 제가 공유한 시험 일정과 커리큘럼 문서를 분석한 후 자동으로 다음을 생성했답니다.
- 고유 이름이 있는 학교 Node
- 구분 및 용어 정보가 포함된 등급 Node
- 각 과정의 주제 Node
- 날짜, 시간, 요일이 포함된 시험 Node
- 커리큘럼 부분을 나타내는 주제 Node
- 이 모든 개체를 의미 있는 방식으로 연결하는 Relationship
이 모든 게 자연스러운 대화를 통해 이루어졌다니, 정말 놀랍죠? Cypher Query를 직접 작성할 필요가 없었다는 점!
도구에 액세스하려면 한 번 또는 전체 채팅에 대해 권한을 부여해야 해요. 따라서 이 경우 Database를 업데이트하고 있으므로 쓰기용으로 구성된 Database에 대한 전체 액세스 권한이 있다는 점을 기억하는 것이 중요해요.
그런 다음 Claude는 문서에서 정보를 추출하고 Cypher 문을 사용하여 Database에 Node를 만들어요.
- Exam
주제를 반복하여 개별적으로 생성합니다. 지시를 받은 경우 목록에서 생성하는 것이 더 효율적이었을 거예요.
Claude는 또한 삽입된 Node 사이의 Relationship을 생성하여 원본 PDF 문서에서 전체 그래프 구조를 얻습니다.
3단계: Knowledge Graph 쿼리
데이터베이스가 채워지면 저는 Claude에게 쉬운 영어로 질문해서 데이터베이스를 쿼리했어요. 예를 들어, "영어 시험은 언제고, 어떤 부분으로 구성돼 있어?"라고 물었을 때 Claude는 적절한 Cypher 쿼리를 생성하고 실행해서 다음을 반환했죠.
영어 시험:
- 날짜: 2025년 3월 4일 화요일
- 시간: 오전 11시 ~ 오후 12시
영어 시험 부분:
- 6단원 — 커뮤니케이션
- 7단원 — 위치 및 방향
- 8단원 — 휴식을 취하세요
- 9단원 — 기록 경신
- 문법 — 이 단원에 포함된 모든 주제
Claude는 뒤에서 다음과 같은 Cypher 쿼리를 실행하고 있었어요.
// Find when the English exam is scheduled
MATCH (subject:Subject {name: 'English'})-[:HAS_EXAM]->(exam:Exam)
RETURN exam.date AS Date, exam.day AS Day, exam.startTime AS StartTime, exam.endTime AS EndTime
// Find the topics/portions for the English exam
MATCH (subject:Subject {name: 'English'})-[:INCLUDES_TOPIC]->(topic:Topic)
RETURN topic.name AS Portion
하지만 이 접근 방식의 장점은 이런 쿼리를 직접 작성할 필요가 없다는 점이에요. 저는 Claude에게 필요한 정보를 요청했을 뿐이죠.
Claude가 정보를 그래프 요소로 추출한 원본 소스 문서 중 일부는 다음과 같아요.
Knowledge Graph 시각화
이 접근 방식의 강력한 측면은 그래프 구조의 시각화를 생성하는 Claude의 능력이에요. 대화를 통해 Claude는 코드를 생성하고 실행해서 다음을 시각화했죠.
- Node 유형 및 Relationship을 보여주는 구조 Schema 다이어그램
2. 성적-과목-시험 Relationship을 그래프로 표현한 것
3. 주제별 주제 수를 보여주는 막대 그래프
코드 없는 MCP 접근 방식의 이점
이 프로젝트를 완료한 후 Neo4j용 MCP와 함께 Claude를 사용하면서 다음과 같은 몇 가지 강력한 이점을 발견했어요.
- — 개발자가 아닌 사람도 Graph Database에 액세스할 수 있어요.
- — 복잡한 데이터베이스 구축이 훨씬 빨라지죠.
- — 일상 언어를 사용해서 데이터베이스 쿼리가 가능해요.
- — Claude는 데이터베이스 구조를 자동으로 문서화해줘요.
- — 추가 도구 없이도 유용한 시각화가 가능하죠.
- — 대화를 통해 데이터베이스를 쉽게 수정하고 확장할 수 있어요.
제한 사항 및 고려 사항
이 접근 방식은 강력하지만 몇 가지 제한 사항에 주목할 필요가 있어요.
- — 복잡한 쿼리 패턴은 여전히 수동 최적화가 필요할 수 있어요.
- — MCP 구성의 데이터베이스 자격 증명에 주의해야 해요.
- — 대규모 데이터베이스의 경우 특수 도구가 더 나은 성능을 제공할 수 있죠.
- — 추출, 데이터 생성, 쿼리 및 코드 생성 중에 LLM이 수행하는 작업을 항상 검증하세요. 여러분은 여러분의 도메인 및 사용 사례에 대한 전문가이고 결국 책임을 져야 해요.
요약
Claude, MCP 및 Neo4j의 조합은 Graph Database 기술의 대중화를 향한 중요한 단계를 나타내요. 코딩 장벽을 제거함으로써 이 접근 방식은 더 많은 사람들이 강력한 Knowledge Graph 기능을 사용할 수 있게 해주죠.
커리큘럼 관계를 모델링하는 교육자, 복잡한 네트워크를 매핑하는 연구원, 조직 구조를 시각화하는 비즈니스 분석가 등 대화 기반 접근 방식을 통해 Graph Database에 그 어느 때보다 쉽게 액세스할 수 있어요.
이 접근 방식이 어떻게 발전하고 AI 지원 대화 중심 개발을 통해 다른 복잡한 데이터베이스 작업이 단순화될지 정말 기대돼요.
참고 자료
- 클로드아이
- 생성 AI 도구
- mcp
- 모델 컨텍스트 프로토콜
- neo4j 그래프 데이터베이스
에이치시스템즈의 LogTree는 Neo4j 기반 GraphRAG 플랫폼으로, 데이터를 자동으로 지식그래프화하고 자연어 질의로 즉시 답을 제공합니다.
'Ontology & Knowledge Graph' 카테고리의 다른 글
| 실시간 추천 엔진으로 매출 UP! Knowledge Graph 활용법 (1) | 2026.07.15 |
|---|---|
| 지식 그래프: 민첩한 비즈니스를 위한 컨텍스트 기반 데이터 활용 (신간 안내) (0) | 2026.07.14 |
| 수집된 데이터에서 연결된 데이터로: Knowledge Graph가 세상을 바꾸는 방법 (0) | 2026.07.13 |
| Knowledge Graphs Are the Accountability Layer for High-Stakes AI (0) | 2026.07.13 |
| 지식 그래프, Graph Database 맞아? Neo4j로 파헤쳐 보기 (0) | 2026.07.13 |
