-
[Github MCP] Github 작업은 AI에게 맡겨보자Study/개발 2025. 4. 29. 21:35
개발하다보면 Git은 뗄레야 뗄 수 없다. 특히, Github에서 해야할 일이 굉장히 많다.
여러 Repository에 걸쳐서 다양한 PR과 코멘트를 상대하다보면, 어디까지 리뷰했고 어디를 하다 말았고 헷갈리는 경우도 종종 있다.
이런 파편화된 업무를 한마디면 척척 정리해주고, 나 대신 코멘트도 달아주는 친구(?)가 있으면 좋겠다는 생각을 하게된다.
마침 최근에 Github 공식 MCP 서버가 나왔고, 우리 Copilot에 활용이 가능했기 때문에 바로 적용해보았다.
https://github.com/github/github-mcp-server
GitHub - github/github-mcp-server: GitHub's official MCP Server
GitHub's official MCP Server. Contribute to github/github-mcp-server development by creating an account on GitHub.
github.com
아래 예시는 Copilot을 위주로 작성되었지만, Claude 등 다른 MCP 클라이언트와도 동작한다.
결과 미리보기
먼저 적용 결과를 보면 다음과 같다.
PR 대시보드
여러 Repo의 내가 연 PR의 상태, 내가 리뷰 요청받은 PR을 한 눈에 볼 수 있는 대시보드
MCP를 통해 조회한 PR 대시보드 대신 코드리뷰
내용은 가렸지만, 코드 라인에 이렇게 바로 리뷰댓글을 남기는 것도 가능하다.
라인별 코드 리뷰 연동하기
준비물
docker
- 서버가 docker로 실행된다.
- docker가 아니어도 podman 처럼 docker같은 기능을 할 수 있으면 가능하다.
Github Access 토큰
- 깃헙 설정 > 개발자 설정에서 토큰 발급
- 사용자 인증 및 기능 사용에 필요
Github MCP 설치
설치는 원클릭으로 가능하다. github-mcp-server에서 아래 버튼을 클릭하고 따라가면 된다.
Install Server 버튼 잘 안되거나 수동을 선호한다면
1) Command Palette (
cmd
+shift
+p
) > Open Settings (JSON) 으로 이동
2) 아래 설정 추가 (<personal_token> = 위에서 발급한 토큰){ ... "mcp": { "servers": { "github": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", "ghcr.io/github/github-mcp-server" ], "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "<personal_token>", } } } } }
cf) Github Enterprise인 경우
mcp.servers.github.args
에 추가:"-e", "GITHUB_HOST",
mcp.servers.github.env
에 추가:"GITHUB_HOST": "https://<enterprise-domain>"
cf) docker 실행이 안되는 경우
docker 실행파일이 위치한 전체 경로를 넣어주면 된다.
podman 사용 시에도 마찬가지3) 설치 확인
정상적으로 서버가 떴다면
Running
이라는 표시가 뜬다.server가 실행중인 경우
그렇지 않다면 VSCode를 재실행해보자.Copilot Chat > Agent 모드로 변경해보면 Chat input 좌상단에 Github MCP 도구 36개가 활성화된 것을 볼 수 있다.
tools가 활성화된 경우 누르면 어떤 기능들이 가능한지 확인할 수 있다.
- Repository 조회
- PR 조회, 생성 등
- 브랜치 조회, 생성 등
- 코멘트/리뷰 달기
github mcp server tools 등 기능 목록은 Tools 섹션에 잘 나와있으니 참고
프롬프트 팁
조직 단위의 Repository에서 일하는 경우, 조직명을 줘야 잘 찾는다.
조직의 Repo에서 조회해야하는데 개인 Repo를 조회하는 경우가 있었다.조회하고 싶은 Repository가 여러개인 경우, 필요한 Repository를 전달해주면 더 빠르다.
전달해주지 않으면 현재 작업중인 디렉토리의 PR만 찾는 경우가 있었다.전달 받은 내용을 테이블 형식 등으로 출력 받으면 좋은 대시보드가 된다.
PR 번호에 PR 링크도 걸어달라고 하면 바로 필요한 PR을 열어볼 수 있다.
approve 여부 등도 조회할 수 있으니, 다양하게 활용해보면 좋을것이다.개인적으론 오전에 전날 들어오거나 놓친 리뷰등을 파악할 때 굉장히 유용하게 사용하고 있다.
728x90'Study > 개발' 카테고리의 다른 글
뚝뚝 끊기는 이미지 UX 개선 - Progressive 이미지 (0) 2025.04.27 Neovim에서 Copilot 사용하기 (0) 2025.02.28 [Naver D2] 고급 타입스크립트 세션 정리 (0) 2025.02.25 JS 글자 수 세기 문제 (0) 2025.02.18 더 이상 메인 에디터로 Neovim을 쓰지 않는 이유 (1) 2024.11.23