GitHub MCP 서버
개요
GitHub MCP 서버는 MCP(Modular Command Processor) 프레임워크를 사용하여 GitHub과 상호 작용하는 API 기반 도구입니다. GitHub의 REST API를 사용하여 사용자 정보, 저장소 정보, 인증된 사용자 데이터를 가져오는 등 다양한 기능을 제공합니다.
이 프로젝트는 Python을 사용하여 구축되었으며, 비동기 API 호출에는 httpx
활용합니다. 또한 GitHub 인증 토큰의 안전한 처리를 위해 dotenv
사용합니다.
특징
- 사용자 이름으로 GitHub 사용자 정보를 가져옵니다.
- GitHub 저장소의 세부 정보를 검색합니다.
- GitHub 개인 액세스 토큰을 사용하여 인증된 사용자 세부 정보를 가져옵니다.
- 모듈식 명령 처리를 위해
FastMCP
활용합니다.
프로젝트 구조
지엑스피1
main.py
: GitHub MCP 서버의 핵심 로직입니다..env
: 환경 변수(예: GitHub 토큰)를 저장합니다.claude_desktop_config.json
: MCP 서버를 실행하기 위한 구성입니다.requirements.txt
: 필요한 종속성을 나열합니다.explanation_video.mp4
: 프로젝트를 설명하는 영상입니다.
설치 지침
필수 조건
- 파이썬 >=3.10
- GitHub 개인 액세스 토큰(인증된 요청용)
- 가상 환경 관리를 위한
conda
또는 venv
설정 및 사용
- 저장소 복제
git clone https://github.com/DivyanshKushwaha/GitHub-MCP-Server-Claude.git
cd GitHub-MCP-Server-Claude
- Python 환경 생성
python -m venv venv
source venv/bin/activate
- 종속성 설치
pip install -r requirements.txt
- 환경 변수 설정(.env 파일 생성)
GITHUB_TOKEN=your_personal_access_token
- claude_desktop_config.json 설정
{
"mcpServers": {
"MCP_Server": {
"command": "my_env/Scripts/uv",
"args": [
"run",
"D:/MCP_Project/main.py"
]
}
}
}
- command 키는 conda 환경에 있는 uv 스크립트의 경로를 지정합니다. 이 경로는 서버를 실행하는 데 사용됩니다.
- args 키는 uv 스크립트에 대한 추가 인수를 제공합니다.
- "실행": 서버를 실행하는 작업을 나타냅니다.
- my_env : 파이썬 환경 'my_env'
- "D:/MCP_Project/main.py": MCP 서버 구현이 포함된 main.py 스크립트의 경로를 지정합니다.
- Claude 데스크톱 애플리케이션 실행
- Claude 데스크톱 애플리케이션을 엽니다.
- claude_desktop_config.json 파일에 구성된 MCP 서버를 사용하여 데이터를 가져오고 처리합니다.