README Documentation
MCP 로컬화 프로젝트
프로젝트 개요
MCP(Model Context Protocol) 기능을 로컬화하여 CPU와 RAM을 통해 GPU의 인공지능을 통합 관리하는 시스템입니다.
주요 기능
- MCP 오케스트레이터: 다양한 MCP 도구들을 통합 관리
- 로컬 도구 래퍼: 기존 MCP 도구들의 로컬 버전 구현
- 통합 API: RESTful API를 통한 시스템 접근
- CLI 인터페이스: 명령줄을 통한 직접 제어
- 작업 관리: 비동기 작업 처리 및 의존성 관리
지원 도구
- Terminal: 시스템 명령 실행
- Filesystem: 파일 시스템 접근 (읽기/쓰기/목록)
- EditFileLines: 파일 라인 단위 편집
- Context7: 라이브러리 문서 검색 (캐시 지원)
- GoogleSearch: 웹 검색 (캐시 지원)
- TaskManager: 작업 생성 및 관리
설치 방법
1. 저장소 클론
git clone <repository-url>
cd Qwen2.5
2. 가상환경 설정
python -m venv venv
source venv/bin/activate # Linux/Mac
# or
venv\\Scripts\\activate # Windows
3. 의존성 설치
pip install -r requirements.txt
사용 방법
CLI 모드
python main.py --mode cli
CLI 명령어:
list
: 작업 목록 조회create <name> <tool_type>
: 새 작업 생성execute <task_id>
: 작업 실행status <task_id>
: 작업 상태 확인terminal <command>
: 터미널 명령 실행help
: 도움말exit
: 종료
API 서버 모드
python main.py --mode api --host 0.0.0.0 --port 8000
API 서버가 시작되면 http://localhost:8000에서 접근 가능합니다.
API 엔드포인트
시스템 정보
GET /
: 기본 정보GET /health
: 헬스 체크GET /system/info
: 시스템 상태 정보
작업 관리
POST /tasks
: 작업 생성GET /tasks
: 작업 목록 조회GET /tasks/{task_id}
: 특정 작업 조회POST /tasks/{task_id}/execute
: 작업 실행DELETE /tasks/{task_id}
: 작업 취소
도구 직접 실행
POST /tools/execute
: 도구 직접 실행
설정 옵션
명령줄 옵션
python main.py --help
--mode
: 실행 모드 (cli/api)--host
: API 서버 호스트--port
: API 서버 포트--base-path
: 기본 작업 경로--log-level
: 로그 레벨
아키텍처
핵심 컴포넌트
- MCPOrchestrator: 작업 생성, 실행, 관리
- IntegratedToolWrappers: 도구들의 로컬 래퍼
- API Interface: RESTful API 서버
- DatabaseManager: SQLite 기반 데이터 저장
데이터 흐름
사용자 입력 → MCP 오케스트레이터 → 도구 실행 → 결과 반환
↓ ↓ ↓
CLI/API 작업 관리 데이터베이스
개발 가이드
새 도구 추가
tool_wrappers.py
에 새 래퍼 클래스 추가mcp_orchestrator.py
에 도구 타입 추가main.py
에서 도구 등록
테스트 실행
# 개별 모듈 테스트
python mcp_orchestrator.py
python tool_wrappers.py
# 전체 시스템 테스트
python main.py --mode cli
데이터베이스 구조
Tables
tasks
: 작업 정보tool_logs
: 도구 실행 로그cache
: 캐시 데이터library_docs
: 라이브러리 문서 캐시search_results
: 검색 결과 캐시
보안 고려사항
- 터미널 명령 실행 시 위험한 명령 차단
- 파일 시스템 접근 시 경로 검증
- 데이터베이스 인젝션 방지
- API 요청 검증
성능 최적화
- 비동기 작업 처리
- 데이터베이스 쿼리 최적화
- 캐시 시스템 활용
- 메모리 사용량 모니터링
트러블슈팅
일반적인 문제
- 모듈 import 오류: 가상환경 활성화 확인
- 데이터베이스 오류: 권한 및 디스크 용량 확인
- 포트 충돌: 다른 포트 사용 (
--port
옵션) - 의존성 오류:
pip install -r requirements.txt
재실행
로그 확인
tail -f mcp_orchestrator.log
향후 계획
Phase 3: 고급 기능 (예정)
- 작업 자동화 시스템
- 캐싱 및 오프라인 모드
- 성능 모니터링 및 최적화
- Qwen2.5 모델 연동
Phase 4: 사용자 인터페이스 (예정)
- 웹 기반 관리 패널
- 설정 관리 시스템
- 실시간 모니터링 대시보드
라이선스
이 프로젝트는 MIT 라이선스 하에 배포됩니다.
기여하기
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
문의
프로젝트 관련 문의사항이나 버그 리포트는 Issues 섹션에 등록해주세요.
Quick Actions
Key Features
Model Context Protocol
Secure Communication
Real-time Updates
Open Source