local-only server
The server can only run on the client’s local machine because it depends on local resources.
Integrations
Displays GitHub Actions workflow status for tests through a badge in the README
Uses Markdown files to store structured information in Memory Banks, including product context, active context, progress, decisions, and system patterns
Allows installation and distribution of the Memory Bank MCP package through npm
메모리 뱅크 MCP 🧠
세션 전반에 걸쳐 정보를 저장하고 검색할 수 있도록 메모리 뱅크를 관리하는 모델 컨텍스트 프로토콜(MCP) 서버입니다.
개요 📋
메모리 뱅크 서버는 AI 비서가 메모리 뱅크와 상호 작용할 수 있도록 도구와 리소스 세트를 제공합니다. 메모리 뱅크는 여러 세션에 걸쳐 맥락을 유지하고 진행 상황을 추적하는 데 도움이 되는 정보의 구조화된 저장소입니다.
특징 ✨
- 메모리 뱅크 관리 : 메모리 뱅크 초기화, 찾기 및 관리
- 파일 작업 : 메모리 뱅크에서 파일 읽기 및 쓰기
- 진행 상황 추적 : 진행 상황을 추적하고 메모리 뱅크 파일을 업데이트합니다.
- 의사결정 로깅 : 맥락과 대안을 고려하여 중요한 의사결정을 로깅합니다.
- 활성 컨텍스트 관리 : 활성 컨텍스트 정보 유지 및 업데이트
- 모드 지원 : 모드별 동작을 위해 .clinerules 파일을 감지하고 사용합니다.
- UMB 명령 : UMB 명령을 사용하여 메모리 뱅크 파일을 임시로 업데이트합니다.
- 강력한 오류 처리 : 가능한 경우 오류를 우아하게 처리하고 작업을 계속합니다.
- 상태 접두사 시스템 : 메모리 뱅크 작동 상태에 대한 즉각적인 가시성
디렉토리 구조 📁
기본적으로 메모리 뱅크는 프로젝트 루트에 있는 memory-bank
디렉터리를 사용합니다. --path
옵션을 사용하여 프로젝트 경로를 지정하면 메모리 뱅크는 <project_path>/memory-bank
에 생성되거나 액세스됩니다.
--folder
옵션을 사용하여 메모리 뱅크 폴더의 이름을 사용자 지정할 수 있습니다. 예를 들어, --folder custom-memory
설정하면 메모리 뱅크는 <project_path>/custom-memory
에 생성되거나 액세스됩니다.
폴더 이름을 사용자 지정하는 방법에 대한 자세한 내용은 사용자 지정 메모리 뱅크 폴더 이름을 참조하세요.
최근 개선 사항 🛠️
- 사용자 정의 가능한 폴더 이름 : 이제 메모리 뱅크에 대한 사용자 정의 폴더 이름을 지정할 수 있습니다.
- 일관된 디렉토리 구조 : 메모리 뱅크는 이제 항상 프로젝트 루트에 구성된 폴더 이름을 사용합니다.
- 향상된 초기화 : 이제 .clinerules 파일이 없어도 메모리 뱅크가 작동합니다.
- 더 나은 경로 처리 : 절대 경로와 상대 경로의 처리가 개선되었습니다.
- 개선된 디렉토리 감지 : 기존 메모리 뱅크 디렉토리를 더 잘 감지합니다.
- 더욱 강력한 오류 처리 : .clinerules 파일과 관련된 오류의 우아한 처리
자세한 내용은 메모리 뱅크 버그 수정을 참조하세요.
설치 🚀
지엑스피1
npx와 함께 사용하기 💻
npx를 사용하면 설치 없이 Memory Bank MCP를 직접 실행할 수 있습니다.
npx 사용에 대한 자세한 내용은 npx-usage.md를 참조하세요.
커서에서 구성하기 🖱️
Cursor는 모델 컨텍스트 프로토콜(MCP)을 지원하는 AI 기반 코드 편집기입니다. Cursor에서 메모리 뱅크 MCP를 구성하려면 다음 단계를 따르세요.
- npx와 함께 Memory Bank MCP를 사용하세요 :패키지를 전역으로 설치할 필요는 없습니다. npx를 직접 사용할 수 있습니다.Copy
- 커서 설정 열기 :
- 설정(⚙️) > 확장 프로그램 > MCP로 이동하세요.
- "MCP 서버 추가"를 클릭하세요
- MCP 서버 구성 :
- 이름 : 메모리 뱅크 MCP
- 명령어 : npx
- 인수 :
@movibe/memory-bank-mcp --mode code
(또는 필요에 따라 다른 모드)
- 저장 및 활성화 :
- "저장"을 클릭하세요
- MCP 서버를 켜서 활성화합니다.
- 연결 확인 :
- 커서에서 프로젝트 열기
- 이제 메모리 뱅크 MCP가 활성화되어 AI 상호 작용에서 사용할 수 있어야 합니다.
Cursor에 대한 자세한 지침과 고급 사용법은 cursor-integration.md를 참조하세요.
커서와 함께 사용하기 🤖
구성이 완료되면 AI 명령을 통해 커서에서 메모리 뱅크 MCP와 상호 작용할 수 있습니다.
- 메모리 뱅크 초기화 :
/mcp memory-bank-mcp initialize_memory_bank path=./memory-bank
- 진행 상황 추적 :
/mcp memory-bank-mcp track_progress action="Feature Implementation" description="Implemented feature X"
- 로그 결정 :
/mcp memory-bank-mcp log_decision title="API Design" context="..." decision="..."
- 스위치 모드 :
/mcp memory-bank-mcp switch_mode mode=code
MCP 모드 및 사용법 🔄
Memory Bank MCP는 특정 작업에 대한 AI 상호 작용을 최적화하기 위해 다양한 운영 모드를 지원합니다.
사용 가능한 모드
- 코드 모드 👨💻
- 초점: 코드 구현 및 개발
- 사용법:
npx @movibe/memory-bank-mcp --mode code
- 가장 적합한 용도: 코드 작성, 리팩토링 및 최적화
- 건축가 모드 🏗️
- 초점: 시스템 설계 및 아키텍처
- 사용법:
npx @movibe/memory-bank-mcp --mode architect
- 가장 적합한 용도: 프로젝트 구조 계획, 구성 요소 설계 및 아키텍처 결정
- 질문 모드 ❓
- 초점: 질문에 답하고 정보 제공
- 사용법:
npx @movibe/memory-bank-mcp --mode ask
- 가장 적합한 용도: 설명, 명확화 및 정보 얻기
- 디버그 모드 🐛
- 초점: 문제 해결 및 문제 해결
- 사용법:
npx @movibe/memory-bank-mcp --mode debug
- 가장 적합한 용도: 버그 찾기 및 수정, 문제 분석
- 테스트 모드 ✅
- 초점: 테스트 및 품질 보증
- 사용법:
npx @movibe/memory-bank-mcp --mode test
- 가장 적합한 용도: 테스트 작성, 테스트 주도 개발
전환 모드
다음과 같은 여러 가지 방법으로 모드를 전환할 수 있습니다.
- 서버를 시작할 때 :Copy
- 세션 중 :Copy
- 커서에서 :Copy
- .clinerules 파일 사용 : 프로젝트에
.clinerules-[mode]
파일을 생성하면 파일이 감지되면 해당 모드로 자동 전환됩니다.
메모리 뱅크 MCP 작동 원리 🧠
메모리 뱅크 MCP는 AI 어시스턴트가 외부 도구 및 리소스와 상호 작용할 수 있도록 하는 모델 컨텍스트 프로토콜(MCP)을 기반으로 합니다. 작동 방식은 다음과 같습니다.
핵심 구성 요소 🧩
- 메모리 뱅크 : 마크다운 파일로 저장된 정보의 구조화된 저장소:
product-context.md
: 전반적인 프로젝트 정보 및 목표active-context.md
: 현재 상태, 진행 중인 작업 및 다음 단계progress.md
: 프로젝트 업데이트 및 이정표 기록decision-log.md
: 맥락과 근거를 포함한 중요한 결정 기록system-patterns.md
: 프로젝트에서 사용된 아키텍처 및 코드 패턴
- MCP 서버 : AI 어시스턴트가 메모리 뱅크와 상호 작용할 수 있는 도구와 리소스를 제공합니다.
- 독립 실행형 프로세스로 실행됩니다
- MCP 프로토콜을 통해 AI 어시스턴트와 통신합니다.
- 메모리 뱅크 관리를 위한 도구 세트를 제공합니다.
- 모드 시스템 : 다양한 작동 모드를 지원합니다.
code
: 코드 구현에 집중ask
: 질문에 답하는 데 집중하다architect
: 시스템 설계에 집중하다debug
: 디버깅 문제에 집중test
: 테스트에 집중하다
데이터 흐름 🔄
- 초기화 : AI 어시스턴트가 MCP 서버에 연결하고 메모리 뱅크를 초기화합니다.
- 도구 호출 : AI 어시스턴트는 MCP 서버에서 제공하는 도구를 호출하여 메모리 뱅크 파일을 읽거나 씁니다.
- 컨텍스트 유지 : 메모리 뱅크는 세션 전반에 걸쳐 컨텍스트를 유지하여 AI가 이전 결정과 진행 상황을 기억할 수 있도록 합니다.
메모리 뱅크 구조 📂
메모리 뱅크는 표준화된 구조를 사용하여 정보를 구성합니다.
- 제품 컨텍스트 : 프로젝트 개요, 목표, 기술 및 아키텍처
- 활성 컨텍스트 : 현재 상태, 진행 중인 작업, 알려진 문제 및 다음 단계
- 진행 상황 : 프로젝트 업데이트 및 이정표의 연대순 기록
- 의사결정 로그 : 맥락, 대안 및 결과를 포함한 중요한 의사결정 기록
- 시스템 패턴 : 아키텍처 패턴, 코드 패턴, 문서 패턴
고급 기능 🚀
- UMB 명령 : 세션 중 변경 사항을 적용하지 않고 메모리 뱅크 파일을 임시로 업데이트
- 모드 감지 : 사용자 입력에 따라 모드를 자동으로 감지하고 전환합니다.
- 파일 마이그레이션 : 서로 다른 파일 명명 규칙 간 마이그레이션을 위한 도구
- 언어 표준화 : 모든 메모리 뱅크 파일은 일관성을 위해 영어로 생성됩니다.
버전 관리 📌
이 프로젝트는 의미적 버전 관리(Semantic Versioning)를 따르며, 커밋 메시지에는 기존 커밋(Conventional Commit)을 사용합니다. 변경 사항이 메인 브랜치에 병합되면 버전이 자동으로 상향 조정되고 커밋 메시지를 기반으로 변경 로그가 생성됩니다.
- 중대한 변경 사항(
BREAKING CHANGE
또는!:
가 포함된 커밋 메시지)이 있는 경우 주요 버전이 올라갑니다. - 새로운 기능이 추가되면 마이너 버전이 올라갑니다(
feat:
또는feat(scope):
가 포함된 커밋 메시지) - 다른 모든 변경 사항(버그 수정, 문서화 등)은 패치 버전 으로 올라갑니다.
변경 사항의 전체 내역을 보려면 CHANGELOG.md 파일을 참조하세요.
사용법 📝
명령줄 도구로 💻
도서관으로서 📚
기여하기 👥
행동 강령과 풀 리퀘스트 제출 프로세스에 대한 자세한 내용은 CONTRIBUTING.md를 참조하세요.
라이센스 📄
이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여되었습니다. 자세한 내용은 라이선스 파일을 참조하세요.
메모리 뱅크 상태 시스템 🚦
메모리 뱅크 MCP는 메모리 뱅크의 작동 상태를 즉시 파악할 수 있는 상태 접두사 시스템을 구현합니다.
상태 표시기
Memory Bank MCP를 사용하는 AI 도우미의 모든 응답은 다음 상태 표시기 중 하나로 시작됩니다.
[MEMORY BANK: ACTIVE]
: 메모리 뱅크가 사용 가능하며 상황에 맞는 응답을 제공하는 데 사용됩니다.[MEMORY BANK: INACTIVE]
: 메모리 뱅크를 사용할 수 없거나 제대로 구성되지 않았습니다.[MEMORY BANK: UPDATING]
: 메모리 뱅크가 현재 업데이트 중입니다(UMB 명령 실행 중)
이 시스템은 사용자가 AI 비서가 전체 상황을 인식하여 작동하는지, 아니면 제한된 정보만으로 작동하는지 항상 알 수 있도록 보장합니다.
이익
- 투명성 : 사용자는 AI가 전체 프로젝트 컨텍스트에 액세스할 수 있는지 항상 알 수 있습니다.
- 문제 해결 : 메모리 뱅크가 제대로 구성되지 않은 경우 즉시 명확하게 알 수 있습니다.
- 컨텍스트 인식 : 특정 응답에 역사적 맥락이 부족한 이유를 사용자가 이해하는 데 도움이 됩니다.
자세한 내용은 메모리 뱅크 상태 접두사 시스템을 참조하세요.
You must be authenticated.
Tools
메모리 뱅크 서버는 AI 비서가 메모리 뱅크와 상호 작용할 수 있도록 도구와 리소스 세트를 제공합니다. 메모리 뱅크는 여러 세션에 걸쳐 맥락을 유지하고 진행 상황을 추적하는 데 도움이 되는 정보의 구조화된 저장소입니다.
- Overview 📋
- Features ✨
- Directory Structure 📁
- Recent Improvements 🛠️
- Installation 🚀
- Usage with npx 💻
- Configuring in Cursor 🖱️
- MCP Modes and Their Usage 🔄
- How Memory Bank MCP Works 🧠
- Versioning 📌
- Usage 📝
- Contributing 👥
- License 📄
- Memory Bank Status System 🚦