IT / AI · 2026.03.10
GitHub MCP 서버 완전정복:
코딩 없이 PR·이슈 자동화하는 법
GitHub에서 PR을 생성하고 이슈를 정리하는 데 얼마나 많은 시간을 쓰고 계신가요? GitHub MCP 서버를 AI 에이전트에 연결하면, “feat/login 브랜치에서 main으로 PR 만들어줘”라는 자연어 한 줄이 실제 GitHub 작업으로 바로 실행됩니다. 2026년 3월 현재, GitHub가 공식 제공하는 MCP 서버를 통해 이슈 생성·코드 검색·릴리즈 관리까지 AI가 직접 처리하는 시대가 열렸습니다.
📦 Docker 1개로 설치 완료
🔧 20개 이상 자동화 Tool
💬 자연어만으로 조작 가능
GitHub MCP 서버가 뭔가요? — 개념 5분 정리
MCP(Model Context Protocol)는 Anthropic이 2024년 말에 오픈소스로 공개한 표준 인터페이스로, AI 에이전트가 외부 도구·서비스를 호출하는 방법을 통일한 프로토콜입니다. 쉽게 말하면 “AI가 사용할 수 있는 플러그인 표준”이라고 보시면 됩니다. 기존에는 각 AI마다 도구 연동 방식이 달랐지만, MCP가 등장하면서 어떤 MCP 서버든 Claude, Cursor, VS Code Copilot 등 MCP 호환 클라이언트에 꽂을 수 있게 됐습니다.
GitHub MCP 서버는 GitHub가 직접 만든 공식 MCP 서버입니다(github/github-mcp-server). AI 에이전트와 GitHub API를 연결해, 이슈 생성·PR 작성·코드 검색·파일 수정·릴리즈 관리 등 GitHub에서 하는 거의 모든 작업을 자연어로 실행할 수 있게 해줍니다. 2025년에 처음 등장했고, 2026년 3월 현재 기능이 꾸준히 확장되고 있습니다.
💡 핵심 가치: GitHub MCP를 쓰면 “코드 작성 → 브랜치 생성 → 파일 푸시 → PR 생성 → 리뷰 작성”까지 Claude Code나 Cursor 대화창을 벗어나지 않고 연속으로 처리할 수 있습니다. IDE 탭 전환 없이 한 흐름에서 개발과 버전 관리가 동시에 진행됩니다.
MCP 아키텍처 — 클라이언트·서버 관계
| 구성 요소 | 역할 | 예시 |
|---|---|---|
| MCP 클라이언트 | AI 에이전트, 요청 전송 | Claude Code, Cursor, VS Code Copilot |
| MCP 서버 | 외부 서비스 연결, Tool 제공 | GitHub MCP, Notion MCP, Playwright MCP |
| 외부 서비스 | 실제 작업 실행 | GitHub API, Notion API, 브라우저 |
설치 전 준비물 — PAT 토큰 발급 방법
GitHub MCP 서버를 로컬에서 사용하려면 Personal Access Token(PAT)이 필요합니다. GitHub API를 AI가 대신 호출할 때 본인 계정의 권한으로 인증하기 위한 열쇠 역할을 합니다. 과거의 Classic 방식보다 Fine-grained token 방식을 사용하시길 강력 권장합니다. 특정 리포지토리에만, 필요한 권한만 부여할 수 있어 보안 사고 피해를 최소화할 수 있기 때문입니다.
Fine-grained PAT 발급 단계
- GitHub 로그인 → 우측 상단 프로필 클릭 → Settings
- 좌측 사이드바 맨 아래 Developer settings 클릭
- Personal access tokens → Fine-grained tokens 선택
- Generate new token 클릭
- Token name 입력, Expiration 90일 권장 설정
- Repository access: 사용할 리포지토리만 선택 (All repositories도 가능)
- 아래 표를 참고해 Permissions 설정 후 Generate token 클릭
- ⚠️ 화면에 표시된 토큰을 즉시 복사 — 이 화면을 벗어나면 다시 볼 수 없습니다
| Permission | Access Level | 필요한 기능 |
|---|---|---|
| Contents | Read & Write | 파일 읽기/쓰기, 커밋 |
| Issues | Read & Write | 이슈 생성/수정/댓글 |
| Pull requests | Read & Write | PR 생성/리뷰/병합 |
| Metadata | Read-only | 리포지토리 정보 조회 (필수) |
| Actions | Read-only | CI/CD 워크플로 조회 (선택) |
⚠️ 보안 주의: 토큰을 소스 코드나 설정 파일에 하드코딩하지 마세요. 반드시 환경 변수로 관리하세요. 만료 기간을 설정하고 주기적으로 갱신하는 것이 좋습니다. 토큰이 유출됐다면 GitHub Settings에서 즉시 revoke하세요.
GitHub MCP 서버 설치 방법 (Docker · npx · 원격 3가지)
GitHub MCP 서버는 연결 방식에 따라 크게 세 가지로 나뉩니다. Docker 방식이 공식에서 가장 권장하며 안정성도 높습니다. npx 방식은 Docker 없이 빠르게 테스트할 때 유용하고, 원격(HTTP) 방식은 로컬 설치 없이 GitHub가 관리하는 서버에 직접 접속합니다. 2026년 초부터 원격 방식이 VS Code Copilot에서 공식 지원되기 시작했으며, 이 방식은 별도 인프라 없이 OAuth 인증만으로 바로 연결됩니다.
① 방법 1: Claude Code 대화형 설치 (Docker, 권장)
Docker Desktop이 실행 중인 상태에서 아래 명령어를 터미널에 입력합니다. 처음 실행 시 이미지를 자동으로 내려받습니다.
claude mcp add github \
-e GITHUB_PERSONAL_ACCESS_TOKEN=ghp_여기에토큰붙여넣기 \
-- docker run -i --rm \
-e GITHUB_PERSONAL_ACCESS_TOKEN \
ghcr.io/github/github-mcp-server
② 방법 2: claude_desktop_config.json 직접 수정
Claude Desktop 앱 사용자는 설정 파일에 직접 추가할 수 있습니다. 경로: macOS 기준 ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"github": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "GITHUB_PERSONAL_ACCESS_TOKEN",
"ghcr.io/github/github-mcp-server"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_여기에토큰붙여넣기"
}
}
}
}
③ 방법 3: 원격(HTTP) 방식 — Docker 없이 바로 연결
VS Code 1.101 이상에서는 GitHub가 직접 관리하는 원격 MCP 서버에 OAuth 인증으로 바로 연결됩니다. 로컬에 Docker를 설치할 필요가 없어 진입 장벽이 매우 낮습니다. Claude Desktop에서도 HTTP URL 방식으로 연결 가능합니다.
{
"mcpServers": {
"github-remote": {
"type": "http",
"url": "https://api.githubcopilot.com/mcp/readonly",
"tools": ["*"],
"headers": {
"X-MCP-Toolsets": "repos,issues,users,pull_requests,actions,web_search"
}
}
}
}
| 방식 | Docker 필요 | 안정성 | 추천 상황 |
|---|---|---|---|
| Docker | ✅ 필요 | ⭐⭐⭐ 최고 | 실무 프로젝트, 안정성 중시 |
| npx | ❌ 불필요 | ⭐⭐ 양호 | 빠른 테스트, 개인 사용 |
| 원격(HTTP) | ❌ 불필요 | ⭐⭐ 양호 | VS Code Copilot, 설치 간소화 |
💡 설치 확인: claude mcp list 명령어로 github가 목록에 보이면 정상 설치된 것입니다. Claude Code를 재시작한 뒤 대화창에서 “내 GitHub 사용자 정보 알려줘”라고 입력해 테스트해보세요.
실전 시나리오 1 — PR 생성·코드 리뷰 자동화
GitHub MCP 서버의 가장 강력한 활용 사례는 단연 PR 워크플로우 자동화입니다. 기존에는 코드를 짜고 나서 터미널에서 git push, 브라우저에서 PR 작성, 리뷰어 지정 등을 수동으로 해야 했습니다. GitHub MCP를 연결하면 코드 작성 직후 대화창에서 한 번에 처리됩니다. 특히 AI가 PR 본문을 변경 내용 기반으로 자동 작성해주는 것이 인상적입니다.
🟦 시나리오 1: 기능 개발 후 PR 한 번에 생성
💬 사용자 프롬프트 예시
“my-org/my-repo에서 feat/user-auth 브랜치를 main에서 새로 만들고, 현재 변경된 파일들을 거기에 올린 다음, PR 만들어줘. 제목: feat: 사용자 인증 기능 추가. 관련 이슈: #42”
🤖 Claude 내부 실행 흐름
① create_branch → feat/user-auth (from main) → ② push_files → 변경 파일 3개 커밋 → ③ create_pull_request → PR #93 생성, Closes #42 자동 링크
🟦 시나리오 2: AI가 코드를 읽고 리뷰 댓글 작성
💬 사용자 프롬프트 예시
“my-org/my-repo PR #87 코드 변경사항 검토하고 잠재적 버그나 개선점 있으면 리뷰 댓글로 작성해줘”
🤖 Claude 내부 실행 흐름
pull_request_read → PR 변경 파일 목록 조회 → get_file_contents → 파일 코드 분석 → pull_request_review_write → 리뷰 댓글 실제 GitHub에 작성
🟦 시나리오 3: 멀티 레포 PR 현황 한 번에 파악
“my-org/frontend와 my-org/backend 이번 주 PR 목록을 모두 보여줘”라고 입력하면, Claude가 두 리포지토리에 각각 list_pull_requests를 호출해 한 화면에 정리해줍니다. gh CLI로는 레포별로 명령어를 따로 입력해야 하지만, GitHub MCP는 자연어 한 줄로 복수 레포를 동시에 조회합니다. 이것이 개인적으로 GitHub MCP의 가장 큰 실용적 차별점이라고 생각합니다.
실전 시나리오 2 — 이슈 관리·코드 검색 자동화
이슈 관리와 코드 검색은 개발 일상에서 반복되는 작업이지만 생각보다 많은 시간을 잡아먹습니다. 버그를 발견했을 때 이슈를 구조화해서 작성하거나, 프로덕션 코드에 남은 디버그 로그를 찾는 일이 대표적입니다. GitHub MCP를 사용하면 이런 작업들을 대화형으로 처리할 수 있습니다. 실제로 써보니 AI가 이슈 제목, 재현 단계, 예상 동작, 실제 동작을 자동으로 구조화해서 이슈를 생성해주는 것이 꽤 유용했습니다.
📌 주요 Tool 전체 목록 (카테고리별 요약)
| 카테고리 | 주요 Tool | 기능 요약 |
|---|---|---|
| 리포지토리 | create_repository, fork_repository, get_file_contents, push_files, create_branch | 레포 생성, 파일 R/W, 브랜치 관리 |
| 이슈 | issue_write, issue_read, list_issues, add_issue_comment | 이슈 CRUD, 댓글, 필터 조회 |
| PR | create_pull_request, merge_pull_request, pull_request_review_write, list_pull_requests | PR 생성·병합·리뷰 작성 |
| 검색 | search_code, search_repositories, search_issues, search_users | 코드·레포·이슈 전체 검색 |
| 릴리즈·태그 | list_releases, get_latest_release, list_tags | 릴리즈 목록, 최신 버전 조회 |
🔍 코드 검색 자동화 — 프로덕션 디버그 로그 찾기
💬 사용자 프롬프트 예시
“my-org/my-repo 리포지토리에서 console.log가 남아있는 파일 전부 찾아줘. 프로덕션에 남은 디버그 로그 확인하고 싶어”
🤖 Claude 실행 결과
search_code query: “console.log repo:my-org/my-repo” → 파일명·라인 번호 포함 7건 반환. GitHub 네이티브 검색 엔진을 그대로 사용하기 때문에 정확도가 매우 높습니다.
🐛 이슈 자동 생성 — 버그 리포트 구조화
💬 사용자 프롬프트 예시
“사용자 로그인 시 500 에러 나는 버그 있어. my-org/my-repo에 버그 리포트 이슈 만들어줘. 레이블: bug, priority: high”
🤖 Claude 실행 결과
issue_write → “[Bug] 로그인 시 500 Internal Server Error 발생” 이슈 자동 생성. 재현 단계, 예상 동작, 실제 동작이 구조화된 마크다운 형태로 작성됩니다.
GitHub CLI vs GitHub MCP — 언제 뭘 써야 할까?
GitHub MCP가 등장하면서 “이제 gh CLI가 필요 없어지는 건가?”라는 질문을 자주 받습니다. 결론부터 말씀드리면 두 도구는 대체재가 아니라 보완재입니다. GitHub CLI는 셸 스크립트나 CI/CD 파이프라인에서 정밀한 제어가 필요할 때 여전히 강력합니다. 반면 GitHub MCP는 AI 에이전트와 대화하며 코드 작성과 GitHub 작업을 연속으로 처리하는 상황에서 빛을 발합니다. 쉽게 말해 CLI는 자동화 스크립트 용, MCP는 AI 대화 내 흐름 유지 용으로 구분해서 사용하면 됩니다.
| 항목 | GitHub CLI (gh) | GitHub MCP |
|---|---|---|
| 사용 방식 | 터미널 명령어 직접 입력 | AI와 자연어 대화 |
| 복합 작업 | 여러 명령 수동 조합 필요 | AI가 Tool 자동 조합 |
| CI/CD 파이프라인 | ✅ 적합 | ❌ 부적합 (AI 환경 필요) |
| 멀티 레포 조회 | 레포별 명령어 각각 실행 | 자연어 한 줄로 동시 처리 |
| 코드 흐름 연계 | 별도 작업 필요 | 코드 작성→GitHub 작업 연속 |
| 학습 곡선 | 명령어·플래그 암기 필요 | 자연어 요청만으로 동작 |
💡 개인적 의견: 저는 CI/CD 자동화와 배포 스크립트에는 여전히 gh CLI를 쓰고, 일상적인 개발 중 이슈 정리·PR 작성·코드 리뷰는 GitHub MCP로 처리하는 방식으로 나눠 사용합니다. 두 도구를 병행하면 서로의 단점을 보완할 수 있습니다.
주의사항·트러블슈팅 — 자주 나오는 오류 해결법
GitHub MCP 서버를 처음 설정할 때 몇 가지 공통 문제가 자주 발생합니다. 아래 목록을 참고하면 대부분의 문제를 빠르게 해결할 수 있습니다. 특히 쓰기 작업(merge_pull_request, delete_file 등)은 실제 GitHub에 즉시 반영되므로, AI에게 실행을 위임하기 전 프롬프트를 신중하게 작성하는 것이 중요합니다.
❌ 오류 1: 401 Unauthorized — 토큰 인증 실패
원인: GITHUB_PERSONAL_ACCESS_TOKEN이 잘못 설정되었거나 만료된 경우. 해결: echo $GITHUB_PERSONAL_ACCESS_TOKEN으로 토큰 존재 여부 확인, GitHub에서 토큰 만료 여부 점검 후 신규 발급.
❌ 오류 2: Docker 관련 서버 시작 실패
원인: Docker Desktop이 실행 중이지 않은 경우. 해결: Docker Desktop을 먼저 실행한 뒤 Claude Code를 재시작. docker ps로 Docker 상태 확인.
❌ 오류 3: 403 Forbidden — 권한 부족
원인: Fine-grained token에 필요한 Permission이 누락된 경우. 조직 리포지토리에서는 Organization access도 별도 승인이 필요합니다. 해결: GitHub → Settings → Developer settings → 토큰 편집에서 권한 추가 및 조직 승인.
❌ 오류 4: Rate limit 초과
원인: GitHub API 인증 요청 기준 시간당 5,000회 제한 초과. 코드 검색·대량 조회 시 발생 가능. 해결: 잠시 대기 후 재시도, 불필요한 반복 요청 최소화.
⚠️ 쓰기 작업 주의: create_or_update_file, merge_pull_request, delete_file 같은 쓰기 작업은 실제 GitHub에 즉시 반영됩니다. AI에게 쓰기 작업을 맡길 때는 프롬프트를 정확히 작성하고, 실행 전 Claude가 계획을 설명할 때 꼭 한 번 검토하세요.
Q&A — 자주 묻는 질문 5가지
마치며 — 총평
GitHub MCP 서버는 AI 코딩 도구의 활용 범위를 “코드 작성”에서 “GitHub 전체 워크플로”로 확장시켜 줍니다. 이슈를 생성하고 PR을 만들고 코드 리뷰를 작성하는 일련의 작업이 대화 한 흐름 안에서 처리된다는 것은 단순한 편의를 넘어, 개발 컨텍스트 스위칭 비용을 크게 줄여줍니다.
개인적으로 가장 유용하다고 느낀 기능은 멀티 레포 조회와 코드 검색 자동화입니다. 여러 레포의 PR 현황을 자연어 한 줄로 파악하거나, 프로덕션에 남은 디버그 로그를 즉시 찾아내는 것은 실무에서 체감 효율이 꽤 높았습니다. 다만 쓰기 작업은 되돌리기 어렵기 때문에, 처음에는 읽기 전용 권한만 주고 천천히 신뢰를 쌓아가는 접근을 권장합니다.
2026년 현재 MCP 생태계는 빠르게 확장되고 있습니다. GitHub MCP 외에도 Notion MCP, Playwright MCP, Context7 MCP 등 다양한 공식·커뮤니티 서버가 등장하고 있습니다. awesome-mcp-servers 리포지토리에서 카테고리별 MCP 목록을 확인해보세요. 지금이 MCP 워크플로우를 내 개발 환경에 도입하기에 가장 적절한 시점입니다.
본 포스팅의 정보는 2026년 3월 10일 기준으로 작성되었습니다. GitHub MCP 서버는 오픈소스 프로젝트로 지속적으로 업데이트되며 Tool 목록 및 설치 방법이 변경될 수 있습니다. 최신 정보는 공식 리포지토리(github/github-mcp-server) 및 GitHub Docs(공식 문서)를 참조하세요. 이 글에서 설명한 쓰기 작업은 실제 GitHub 계정에 즉시 반영되므로 신중하게 사용하시기 바랍니다.

댓글 남기기