문서를 AI 에이전트를 위한 검색 가능한 컨텍스트로 변환하는 오픈 소스 MCP 서버를 구축했습니다 — Docker Compose로 완전히
요약
KnowledgeMCP는 웹사이트, PDF, Notion 등 다양한 문서를 AI 에이전트가 검색할 수 있는 MCP 엔드포인트로 변환하는 오픈 소스 도구입니다. Docker Compose를 통해 100% 로컬 환경에서 실행되며, 외부 API 키 없이도 하이브리드 검색 기능을 제공합니다.
핵심 포인트
- MCP 프로토콜을 지원하여 Claude, Cursor 등과 연동 가능
- OpenSearch와 fastembed를 활용한 100% 로컬 실행 환경
- 하이브리드(BM25 + 벡터) 검색을 통한 정교한 문서 쿼리 지원
- Docker Compose를 이용한 간편한 설치 및 낮은 리소스 사용량
안녕하세요 r/selfhosted 여러분, 저는 KnowledgeMCP를 개발해 왔습니다. 이 도구는 문서(웹사이트, PDF, Confluence, Notion, GitHub 리포지토리)를 AI 에이전트가 MCP 프로토콜을 통해 쿼리할 수 있는 검색 가능한 엔드포인트로 변환합니다. 이곳에 공유하는 이유는 다음과 같습니다: 100% 로컬에서 실행됩니다. 클라우드 계정이 필요 없습니다.
스택:
- OpenSearch (단일 노드 Docker, 하이브리드 BM25 + 벡터 검색 (vector search))
- SQLite (DynamoDB 대체)
- 로컬 파일 시스템 (S3 대체)
- fastembed를 통한 ONNX 임베딩 (OpenAI/Bedrock 대체 — API 키 불필요)
- Next.js 대시보드
실행 방법:
git clone https://github.com/hashwnath/KMCP.git
cd KMCP
docker compose up -d
실행 시 다음을 사용할 수 있습니다:
- localhost:3000의 대시보드
- localhost:8000/mcp/{your-tenant}의 MCP 엔드포인트
- localhost:8081의 관리자 API (Admin API)
기능:
MCP 호환 AI 에이전트(Claude, Cursor, Copilot, Continue)를 MCP URL로 지정하세요. 에이전트는 docs_search, code_sample_search, docs_fetch라는 3가지 도구를 얻게 됩니다. 에이전트는 하이브리드 의미론적(semantic) + 키워드 검색을 통해 문서를 검색할 수 있습니다.
리소스 사용량:
- OpenSearch: 약 512MB RAM (설정 가능)
- 앱 컨테이너: 약 200MB RAM
- 임베딩 모델: 첫 실행 시 약 30MB 다운로드
- 총 디스크 용량: 이미지 포함 약 1GB
쿼리 시점에는 외부 호출이 없습니다. 임베딩은 인덱싱(index) 시점에만 발생합니다. 쿼리는 순수 로컬 검색으로 수행됩니다 (~100ms).
라이선스: AGPL-3.0 (백엔드), MIT (프론트엔드)
https://github.com/hashwnath/KMCP
설정이나 아키텍처에 관한 질문은 언제든 환영합니다.
submitted by /u/Top-Jacket-5191 [link] [comments]
AI 자동 생성 콘텐츠
본 콘텐츠는 r/SelfHosted (AI filter)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기