Skip to content

Conversation

@musicinmybrain
Copy link

The only breaking change in console 0.16.0 is that crates that depend on console with default-features = False may need to explicitly enable the new std feature.

h16rkim pushed a commit to h16rkim/fetch-mcp that referenced this pull request Aug 23, 2025
- 에이전트가 이번 커밋에서 한일:
  사용자 요청에 따라 GitHub Pull Request 정보를 fetch하는 완전한 기능을 구현했습니다.

  새로 생성된 파일들:
  • src/github/GitHubTypes.ts - GitHub API 인터페이스 정의 (I prefix 패턴)
  • src/github/GitHubFetcher.ts - GitHub API 클라이언트 및 처리 로직
  • src/github/model/GitHubUser.ts - 사용자 정보 모델 클래스
  • src/github/model/GitHubFile.ts - 변경된 파일 정보 모델 클래스
  • src/github/model/GitHubComment.ts - 코멘트 정보 모델 클래스
  • src/github/model/GitHubReview.ts - 리뷰 정보 모델 클래스
  • src/github/model/GitHubCommit.ts - 커밋 정보 모델 클래스
  • src/github/model/GitHubPullRequest.ts - Pull Request 기본 정보 모델 클래스
  • src/github/model/GitHubPullRequestModel.ts - 전체 PR 정보 통합 모델 클래스
  • src/github/model/GitHubPullRequestResponse.ts - PR API 응답 처리 클래스
  • src/github/model/GitHubFilesResponse.ts - 파일 목록 API 응답 처리 클래스
  • src/github/model/GitHubCommentsResponse.ts - 코멘트 API 응답 처리 클래스
  • src/github/model/GitHubReviewsResponse.ts - 리뷰 API 응답 처리 클래스
  • src/github/model/GitHubCommitsResponse.ts - 커밋 API 응답 처리 클래스
  • src/github/model/GitHubReviewCommentsResponse.ts - 리뷰 코멘트 API 응답 처리 클래스

  수정된 파일들:
  • src/constants.ts - GitHub 관련 상수 추가 (도구명, 환경변수명)
  • src/validate.ts - GitHub URL 검증 로직 및 validateGitHubRequest 함수 추가
  • src/index.ts - fetch_github_pull_request 도구 등록 및 요청 핸들러 추가
  • README.md - GitHub Pull Request 기능 설명, 환경변수 설정 방법, 프로젝트 구조 업데이트

  구현된 주요 기능:
  • GitHub Personal Access Token 인증 처리
  • Pull Request 기본 정보 (제목, 설명, 상태, 작성자, 브랜치 등)
  • 변경된 파일 목록 및 통계 (추가/삭제/수정 라인 수)
  • 모든 커밋 정보 및 검증 상태
  • 리뷰 및 리뷰 코멘트 정보
  • 일반 코멘트 정보
  • 라벨, 할당자, 마일스톤 정보
  • 병렬 API 호출을 통한 성능 최적화
  • 포괄적인 에러 처리 (권한 없음, 존재하지 않는 PR 등)

- 특별한 요구사항이나 제한사항:
  • Personal Access Token을 환경변수 GITHUB_ACCESS_TOKEN에서 입력받도록 구현
  • Pull Request의 모든 정보 (기본 정보, 변경된 파일, 코멘트, 리뷰, 커밋)를 포함
  • maxLength 파라미터는 사용하지 않음 (사용자 요청)
  • 기존 아키텍처 패턴 (Interface-Class 패턴, 개별 모델 파일, 직접 import) 준수
  • McpResult 통일된 결과 타입 사용

- TODO: 앞으로 해야 할 일:
  • 실제 GitHub API 테스트 및 검증
  • TypeScript 컴파일 확인 및 문법 오류 수정
  • 성능 최적화 및 에러 처리 개선

- MEMO: 메모할 만한 것:
  • GitHub API v4 호환성 확보
  • 병렬 처리로 6개 API 동시 호출하여 성능 최적화
  • 리뷰 코멘트를 일반 코멘트와 통합하여 통합된 뷰 제공
  • 기존 Slack, Atlassian 서비스와 동일한 아키텍처 패턴 적용

- SUGGEST: 제안할 만한 것:
  • GitHub API 호출 제한 (rate limiting) 처리 로직 추가 고려
  • 캐싱 메커니즘 도입으로 반복 요청 최적화 검토
  • GitHub Enterprise Server 지원 확장 고려

<prompt>
이 MCP Server 에 Github Pull Request 의 상세내용을 fetch 해오는 기능을 추가하고 싶어요. Pull Request 링크의 예시는 다음과 같아요.(dandavison/delta#2021)

다른 fetch 기능과 유사하게, GITHUB_ACCESS_TOKEN 을 환경변수에서 입력받고, 이를 통해 Github PR 정보를 fetch 해오는 기능을 만들어 주세요.
tool name 은 "fetch_github_pull_request" 로 네이밍 해주세요
</prompt>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant