🐝 Swarms MCP 문서 서버
📖 설명
이 프로그램은 FastMCP 기반으로 구축된 에이전트 프레임워크 문서화 MCP 서버로, AI 에이전트가 문서 데이터베이스에서 정보를 효율적으로 검색할 수 있도록 설계되었습니다. 하이브리드 시맨틱(벡터) 및 키워드(BM25) 검색, 청크 인덱싱, 그리고 원활한 에이전트 통합을 위한 강력한 FastMCP 도구 API를 결합합니다.
주요 역량:
의미 검색과 키워드 검색을 모두 사용한 효율적인 청크 수준 검색
에이전트는 FastMCP 도구를 사용하여 문서를 쿼리, 나열 및 검색할 수 있습니다.
로컬 우선, 저지연 디자인(모든 데이터가 로컬에서 인덱싱 및 쿼리됨)
파일 변경 시 자동 재색인화
모듈식:
corpora/에 모든 저장소 추가, 모든 주요 파일 유형 지원확장 가능: 필요에 따라 새로운 도구, 검색기 또는 코퍼스 추가
주요 모듈:
embed_documents.py→ 문서를 로드, 청크 및 임베드합니다.swarms_server.py→ MCP 서버와 FastMCP 도구를 불러옵니다.
Related MCP server: MCP Expert Server
🌟 주요 특징
하이브리드 리트리버 🔍: 의미 검색과 키워드 검색을 결합했습니다.
동적 마크다운 처리 📄: 파일 크기에 따른 스마트 로더.
특수 로더 ⚙️:
.py,.ipynb,.md,.txt,.yaml,.yml.청크 및 파일 요약 📈: 파일 수와 함께 청크 수를 표시합니다.
라이브 워치독 🔥:
corpora/의 모든 변경 사항에 즉시 대응합니다.비용에 대한 사용자 확인 ✅: 값비싼 임베딩 전에 확인합니다.
Healthcheck Endpoint 🚑: 서버가 사용 가능한지 확인합니다.
로컬 우선 🗂️: 모든 저장소가 외부 종속성 없이 로컬에서 색인됩니다.
안전 삭제 도우미 🔥: 손상되었거나 일치하지 않는 인덱스를 자동으로 삭제합니다.
🏗️ 버전 기록
버전 | 날짜 | 하이라이트 |
2.2 | 2025‑04‑25 | 서버에서 임베드/로드 분할, 로딩 요약에서 전체 청크 계산 |
1.0 | 2025‑04‑25 | 동적 마크다운 로더, 색상 로그, Healthcheck 도구 |
0.7 | 2025‑04‑25 |
,
,
용 특수 파일 로더 |
0.5 | 2025‑04‑10 | OpenAI 대규모 모델 임베딩, 확장된 MCP 도구 |
0.1 | 2025‑04‑10 | 일반 로더가 포함된 초기 버전 |
📚 코퍼라(로컬 리포지토리) 관리
Swarms와 다른 프레임워크는 매우 크기 때문에 전체 코퍼스가 GitHub에 푸시되지 않습니다 .
대신, corpora/ 에서 수동으로 복제합니다 .
지엑스피1
✅ 참고사항:
공개, 비공개, 사용자 정의 등 모든 저장소를 추가합니다.
로컬에서 맞춤형 AI 지식 기반을 구축하세요.
대용량 저장소 (500MB 이상)는 괜찮습니다. 모든 인덱싱은 로컬에서 수행됩니다.
🚀 빠른 시작
⚙️ 구성
Corpus :
corpora/내부에 저장소 삭제환경 변수 :
.env에는OPENAI_API_KEY포함되어야 합니다.
인덱스 파일 지원 :
chroma-collections.parquet과chroma.sqlite3가 모두 지원됩니다. 둘 다 존재하는 경우.parquet사용하는 것이 좋습니다.
자동 임베딩 :
인덱스를 찾을 수 없는 경우 서버에서 자동으로 문서를 임베드하고 인덱싱하라는 메시지를 표시합니다.
선택 사항 :
원하는 경우 Chroma 압축을 비활성화하세요.
setx CHROMA_COMPACTION_SERVICE__COMPACTOR__DISABLED_COLLECTIONS "swarms_docs"
명령줄 플래그 :
--reindex→ 서버 실행 중에 새로 고침 재인덱스를 트리거합니다.
🔄 파일 감시 및 자동 재색인화
MCP 서버는 corpora/ 파일 변경 사항을 감시합니다.
모든 수정, 생성 또는 삭제는 라이브 재색인을 트리거합니다.
서버를 다시 시작할 필요가 없습니다.
🛠️ 사용 가능한 FastMCP 도구
도구 | 설명 |
| 관련 문서 청크 검색 |
| 모든 인덱스된 파일 나열 |
| 경로 및 인덱스로 특정 청크 가져오기 |
| 강제 재색인화(전체 또는 증분) |
| MCP 서버 상태 확인 |
❓ 문제 해결
질문: 서버를 시작할 때 '유효한 기존 인덱스를 찾을 수 없습니다'라는 메시지가 나타납니다.
A: 이제 서버에서 문서를 임베드하고 색인화하라는 메시지를 표시합니다. 메시지를 수락하여 계속 진행하거나, 먼저
python embed_documents.py수동으로 실행하세요.
질문: 어떤 인덱스 파일을 사용하나요?
A: 서버는 사용 가능한 경우
chroma-collections.parquet사용하고, 그렇지 않은 경우chroma.sqlite3합니다.
질문: 강제로 재색인을 실행하고 싶습니다.
답변:
python swarms_server.py --reindex실행하거나swarm_docs.reindex도구를 사용하세요.
📋 사용 예시
🧰 확장 및 재구축
새로운 문서를 추가 →
corpora/에 넣은 후:python swarms_server.py --reindex스키마 변경 → (예: 다른 메타데이터 구조):
python swarms_server.py --reindex --full새로운 저장소 추가 →
corpora/아래에 폴더를 끌어다 놓고 다시 색인합니다.주로 읽기 전용 저장소에 권장됩니다 .
setx CHROMA_COMPACTION_SERVICE__COMPACTOR__DISABLED_COLLECTIONS "swarms_docs"
🔗 IDE 통합
Windsurf Cascade에 직접 연결:
그러면 Cascade 자동화에서 swarm_docs.* 도구에 액세스할 수 있습니다.
📦 요구 사항
💡 Python 3.11 환경 필요
환경을 명시적으로 생성하세요.
다음으로 설치합니다.
✅ MCP 서버 준비 완료
부팅 후:
적절한 로딩 요약
비용이 많이 드는 작업 전 안전한 확인
자동 파일 감시 및 재색인화
윈드서핑 플러그인 준비 완료
전체 도구 적용
캐스케이드를 사용해 보세요! 🏄♂️