local-only server
The server can only run on the client’s local machine because it depends on local resources.
Integrations
Uses the Hugging Face Inference API to generate embeddings for the knowledge base content, with optional model selection through environment variables.
Uses LangChain's MarkdownTextSplitter to split file content into chunks for the knowledge base.
지식 기반 MCP 서버
이 MCP 서버는 다양한 지식 기반의 콘텐츠를 나열하고 검색하는 도구를 제공합니다.
설치 지침
이 지침에서는 시스템에 Node.js와 npm이 설치되어 있다고 가정합니다.
필수 조건
- 저장소를 복제합니다.지엑스피1
- 종속성 설치:Copy
- 환경 변수 구성:
- 서버에서는
HUGGINGFACE_API_KEY
환경 변수를 설정해야 합니다. 이 키는 Hugging Face Inference API의 API 키로, 지식 기반 콘텐츠의 임베딩을 생성하는 데 사용됩니다. Hugging Face 웹사이트( https://huggingface.co/ )에서 무료 API 키를 받으실 수 있습니다. - 서버를 사용하려면
KNOWLEDGE_BASES_ROOT_DIR
환경 변수를 설정해야 합니다. 이 변수는 지식 기반 하위 디렉터리가 있는 디렉터리를 지정합니다. 이 변수를 설정하지 않으면 기본값은$HOME/knowledge_bases
입니다. 여기서$HOME
현재 사용자의 홈 디렉터리입니다. - 서버는 FAISS 인덱스 경로를 지정하는
FAISS_INDEX_PATH
환경 변수를 지원합니다. 설정하지 않으면 기본적으로$HOME/knowledge_bases/.faiss
가 사용됩니다. - 서버는 임베딩 생성에 사용할 Hugging Face 모델을 지정하는
HUGGINGFACE_MODEL_NAME
환경 변수를 지원합니다. 설정하지 않으면 기본적으로sentence-transformers/all-MiniLM-L6-v2
가 사용됩니다. - 이러한 환경 변수는
.bashrc
또는.zshrc
파일에서 설정하거나 MCP 설정에서 직접 설정할 수 있습니다.
- 서버에서는
- 서버를 빌드하세요:Copy
- MCP 설정에 서버를 추가합니다.
/home/jean/.vscode-server/data/User/globalStorage/saoudrizwan.claude-dev/settings/
에 있는cline_mcp_settings.json
파일을 편집합니다.mcpServers
개체에 다음 구성을 추가합니다.
Copy/path/to/knowledge-base-mcp-server
서버 디렉토리의 실제 경로로 바꾸세요./path/to/knowledge_bases
지식 기반 디렉토리의 실제 경로로 바꾸세요.
- 지식 기반 디렉토리를 만듭니다.
- 각 지식 기반(예:
company
,it_support
,onboarding
)에 대해KNOWLEDGE_BASES_ROOT_DIR
내에 하위 디렉토리를 만듭니다. - 지식 기반 콘텐츠가 포함된 텍스트 파일(예:
.txt
,.md
)을 이러한 하위 디렉토리에 넣습니다.
- 각 지식 기반(예:
- 서버는 지정된 지식 기반 하위 디렉토리 내의 모든 텍스트 파일(예:
.txt
,.md
)을 재귀적으로 읽습니다. - 서버는 숨겨진 파일과 디렉토리(
.
으로 시작하는 파일과 디렉토리)를 건너뜁니다. - 서버는 각 파일에 대해 SHA256 해시값을 계산하여 숨겨진
.index
하위 디렉터리에 있는 동일한 이름의 파일에 저장합니다. 이 해시는 파일이 마지막 인덱싱 이후 수정되었는지 확인하는 데 사용됩니다. - 파일 내용은
langchain/text_splitter
의MarkdownTextSplitter
를 사용하여 청크로 분할됩니다. - 각 청크의 내용은 유사성 검색에 사용되는 FAISS 인덱스에 추가됩니다.
- FAISS 색인은 서버 시작 시 자동으로 초기화됩니다. 지식 기반 파일의 변경 사항을 확인하고 그에 따라 색인을 업데이트합니다.
용법
서버는 두 가지 도구를 제공합니다.
list_knowledge_bases
: 사용 가능한 지식 기반을 나열합니다.retrieve_knowledge
: 쿼리를 기반으로 지식 기반에서 유사한 청크를 검색합니다. 선택적으로, 지식 기반이 지정된 경우 해당 지식 기반만 검색하고, 그렇지 않은 경우 사용 가능한 모든 지식 기반을 고려합니다. 기본적으로 점수가 임계값 2 미만인 문서 청크는 최대 10개까지 반환됩니다. 선택적으로threshold
매개변수를 사용하여 다른 임계값을 지정할 수 있습니다.
이러한 도구는 MCP 인터페이스를 통해 사용할 수 있습니다.
retrieve_knowledge
도구는 FAISS 색인을 사용하여 의미론적 검색을 수행합니다. 색인은 서버가 시작되거나 지식 베이스의 파일이 수정될 때 자동으로 업데이트됩니다.
retrieve_knowledge
도구의 출력은 다음과 같은 구조를 가진 마크다운 형식의 문자열입니다.
Copy
각 결과에는 가장 유사한 청크의 내용, 소스 파일, 유사도 점수가 포함됩니다.