LlamaIndex를 사용한 영구 코드 MCP 서버
Claude가 생성한 코드의 의미 지식 그래프를 생성하고 유지하는 모델 컨텍스트 프로토콜(MCP) 서버입니다. LlamaIndex 기반으로, 고급 의미 검색 기능을 통해 여러 세션에서 컨텍스트를 관리할 수 있으며, 컨텍스트 창에 전체 코드베이스를 표시할 필요도 없습니다.
문제 및 해결책
Claude와 함께 소프트웨어를 개발할 때:
- 컨텍스트 창이 제한되어 있어 대규모 코드베이스 작업이 어렵습니다.
- 이전 코드 컨텍스트는 세션 간에 손실됩니다.
- Claude는 프로젝트 구조에 대한 지속적인 이해가 부족합니다.
- 각 세션마다 코드에 대한 중복 설명이 필요합니다.
- 구현 일관성을 유지하는 것은 어렵습니다.
Persistent-Code는 다음을 통해 이러한 문제를 해결합니다.
- 코드 구성 요소와 그 관계에 대한 지식 그래프 만들기
- 각 구성 요소의 구현 상태 추적
- 코드베이스를 탐색, 쿼리하고 이해하기 위한 도구 제공
- 특정 코딩 작업에 필요한 최소한의 컨텍스트 조립
- 채팅 세션 전반에 걸쳐 지속적인 지식 유지
LlamaIndex 통합
Persistent-Code는 LlamaIndex를 활용하여 향상된 의미적 이해를 제공합니다.
- 의미 검색 : 키워드뿐만 아니라 의미에 따라 코드 구성 요소를 찾습니다.
- 벡터 임베딩 : 유사성 매칭을 위해 코드가 벡터 공간에 임베딩됩니다.
- 지식 그래프 : 구성 요소 간의 관계가 의미적으로 추적됩니다.
- 문맥적 검색 : 관련 코드는 의미적 관련성을 기반으로 검색됩니다.
이러한 통합을 통해 Claude는 더욱 심층적으로 코드베이스를 이해할 수 있습니다.
- 이름이 아닌 기능에 따라 함수를 찾으세요
- 컨텍스트를 준비할 때 더욱 관련성 있는 코드 구성 요소를 얻으세요.
- 구성 요소 간의 관계를 더 잘 이해합니다.
- 유사한 구현의 예를 보다 정확하게 검색합니다.
설치
필수 조건
- Python 3.10 이상
- UV 패키지 관리자(권장) 또는 pip
설정하기
지엑스피1
용법
프로젝트 초기화
서버 시작
데스크톱용 Claude 구성
- 데스크톱용 Claude 구성 파일을 편집하세요.
- 위치:
~/Library/Application Support/Claude/claude_desktop_config.json
- 다음 구성을 추가합니다.
- 위치:
- 데스크톱용 Claude 재시작
- Claude에게 코드에 대해 질문하여 MCP 서버에 연결하세요.
사용 가능한 도구
지식 그래프 관리
add_component
: 그래프에 새로운 코드 구성 요소를 추가합니다.update_component
: 기존 구성 요소를 업데이트합니다.add_relationship
: 구성 요소 간의 관계를 생성합니다.
코드 검색 및 탐색
get_component
: ID 또는 이름으로 구성 요소를 검색합니다.find_related_components
: 주어진 구성 요소와 관련된 구성 요소를 찾습니다.search_code
: 코드베이스를 의미적으로 검색합니다.
상태 관리
update_status
: 구성 요소의 구현 상태 업데이트get_project_status
: 프로젝트 전반의 구현 상태를 검색합니다.find_next_tasks
: 구현할 논리적 다음 구성 요소를 제안합니다.
컨텍스트 어셈블리
prepare_context
: 특정 작업에 대한 최소 컨텍스트를 조립합니다.continue_implementation
: 구성 요소 구현을 계속하기 위한 컨텍스트 제공get_implementation_plan
: 보류 중인 구성 요소를 구현하기 위한 계획을 생성합니다.
코드 분석
analyze_code
: 코드를 분석하고 지식 그래프를 업데이트합니다.
워크플로 예시
- 프로젝트 초기화:
- 서버를 시작합니다:
- Claude에게 프로젝트 디자인을 요청하세요:
- Claude는 구성 요소를 생성하고 지식 그래프에서 이를 추적합니다.
- 다음 세션에서 개발을 계속합니다.
- Claude는 현재 상태를 검색하고 다음 단계를 제안합니다.
- 특정 구성 요소를 구현합니다.
- Claude는 관련 컨텍스트를 검색하고 일관된 구현을 제공합니다.
의미 검색 사용
LlamaIndex 통합을 통해 이제 보다 자연스러운 언어를 사용하여 구성 요소를 찾을 수 있습니다.
클로드는 "작업 완료"라는 단어가 명확하게 포함되어 있지 않더라도 관련 구성 요소를 찾기 위해 의미 검색을 사용합니다.
LlamaIndex 데모 실행
의미적 기능을 보여주기 위해 데모 스크립트를 포함했습니다.
이 예제에서는 캘린더 애플리케이션을 분석하고 기능에 대한 의미 검색을 수행하는 방법을 보여줍니다.
기여하다
기여를 환영합니다! 풀 리퀘스트를 제출해 주세요.
특허
이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여되었습니다. 자세한 내용은 라이선스 파일을 참조하세요.
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
Claude와의 세션 전반에 걸쳐 컨텍스트를 유지할 수 있는 코드의 의미 지식 그래프를 만들고 유지 관리하며, 컨텍스트 창에 전체 코드베이스가 필요하지 않고 고급 검색 기능을 제공합니다.
Related MCP Servers
- AsecurityFlicenseAqualityProvides sophisticated context management for Claude, enabling persistent context across sessions, project-specific organization, and conversation continuity.Last updated -41JavaScript
- -securityFlicense-qualityA Model Context Protocol server for Claude Desktop that provides structured memory management across chat sessions, allowing Claude to maintain context and build a knowledge base within project directories.Last updated -TypeScript
- -securityFlicense-qualityA powerful context management system that maintains persistent context across coding sessions, helping development teams track project structure, dependencies, and progress.Last updated -TypeScript
- -securityFlicense-qualityProvides semantic search capabilities over PyTorch documentation, enabling users to find relevant documentation, APIs, code examples, and error messages through Claude Code integration.Last updated -1Python