mcp-integration-server-solin
v1.0.3
Published
MCP Server for Cody, YouTrack, and Forgejo integration
Maintainers
Readme
MCP 통합 서버
Cody, YouTrack, Forgejo를 연동하는 Model Context Protocol (MCP) 서버입니다.
🚀 주요 기능
통합 서비스
- YouTrack: 이슈 관리 및 추적
- Forgejo: Git 저장소 관리 및 버전 관리
- Cody: 코드 분석 및 생성 (로컬 분석 포함)
핵심 기능
- 이슈와 커밋 자동 연결
- 코드 분석 결과 기반 이슈 자동 생성
- 통합된 프로젝트 관리 워크플로우
- 외부 API 의존성 최소화
📋 사전 요구사항
- Node.js 18+
- npm 또는 yarn
- YouTrack 인스턴스 및 API 토큰
- Forgejo 서버 및 액세스 토큰
🛠️ 설치 및 설정
1. 프로젝트 클론 및 의존성 설치
git clone <repository-url>
cd mcp-integration-server
npm install2. 환경 변수 설정
env.example 파일을 .env로 복사하고 설정값을 입력하세요:
cp env.example .env.env 파일 예시:
# YouTrack 설정
YOUTRACK_BASE_URL=https://your-company.youtrack.cloud
YOUTRACK_TOKEN=your_youtrack_permanent_token
# Forgejo Git 서버 설정
FORGEJO_BASE_URL=https://your-git-server.com
FORGEJO_TOKEN=your_forgejo_access_token
FORGEJO_USERNAME=your_username
# MCP 서버 설정
MCP_SERVER_NAME=integration-server
MCP_SERVER_VERSION=1.0.03. 빌드 및 실행
# 개발 모드
npm run dev
# 프로덕션 빌드
npm run build
npm start🔧 사용 방법
MCP 클라이언트에서 서버 연결
MCP 클라이언트 설정에 다음을 추가하세요:
{
"mcpServers": {
"integration-server": {
"command": "node",
"args": ["path/to/mcp-integration-server/dist/index.js"]
}
}
}사용 가능한 도구들
YouTrack 도구
youtrack_get_issues: 이슈 목록 조회youtrack_create_issue: 새 이슈 생성youtrack_update_issue: 이슈 업데이트youtrack_get_issue: 특정 이슈 조회
Forgejo 도구
forgejo_get_repositories: 저장소 목록 조회forgejo_get_commits: 커밋 목록 조회forgejo_create_pull_request: Pull Request 생성forgejo_get_pull_requests: Pull Request 목록 조회
Cody 도구
cody_analyze_code: 코드 분석 (로컬)cody_generate_code: 코드 생성 템플릿
통합 도구
link_issue_to_commit: 이슈와 커밋 연결create_issue_from_code_analysis: 코드 분석 기반 이슈 생성
💡 사용 예시
1. YouTrack 이슈 조회
{
"tool": "youtrack_get_issues",
"arguments": {
"project": "PROJ",
"query": "state: Open",
"limit": 5
}
}2. 코드 분석 후 이슈 생성
{
"tool": "create_issue_from_code_analysis",
"arguments": {
"project": "PROJ",
"code": "function badCode() { var x = 1; }",
"filePath": "src/example.js",
"analysisType": "quality"
}
}3. 이슈와 커밋 연결
{
"tool": "link_issue_to_commit",
"arguments": {
"issueId": "PROJ-123",
"owner": "myorg",
"repo": "myrepo",
"commitSha": "abc123def456"
}
}🏗️ 아키텍처
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ MCP Client │ │ MCP Server │ │ External APIs │
│ (Cody, etc) │◄──►│ Integration │◄──►│ YouTrack, Git │
└─────────────────┘ └─────────────────┘ └─────────────────┘
│
▼
┌─────────────────┐
│ Local Services │
│ (Code Analysis) │
└─────────────────┘🔒 보안 고려사항
- API 토큰은 환경 변수로 관리
- HTTPS 연결 사용 권장
- 토큰 권한 최소화 원칙 적용
- 정기적인 토큰 갱신
🚀 확장 가능성
추가 가능한 통합
- GitLab/GitHub 지원
- Jira 연동
- Slack/Teams 알림
- CI/CD 파이프라인 연동
커스터마이징
- 코드 분석 규칙 추가
- 워크플로우 자동화 규칙
- 커스텀 이슈 템플릿
🐛 문제 해결
일반적인 문제들
연결 오류
- API URL과 토큰 확인
- 네트워크 연결 상태 확인
- 방화벽 설정 확인
권한 오류
- API 토큰 권한 확인
- 프로젝트 접근 권한 확인
빌드 오류
- Node.js 버전 확인 (18+ 필요)
- 의존성 재설치:
rm -rf node_modules && npm install
📝 라이선스
MIT License
🤝 기여하기
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
📞 지원
문제가 발생하면 이슈를 생성하거나 문서를 참조하세요.
비용 최적화 포인트:
- 외부 API 호출 최소화
- 로컬 코드 분석 우선 사용
- 캐싱 메커니즘 활용
- 배치 처리로 API 호출 효율화
