GitHub Activity MCP Server
🚀 GitHub Activity MCP Server
FastMCP와 PyGithub로 구축된 MCP(Model Context Protocol) 서버로, AI 어시스턴트와 GitHub를 연결합니다 — 저장소를 검색하고 이슈와 PR을 관리하며 기여도를 분석할 수 있습니다.
MCP란 무엇인가요? Model Context Protocol는 AI 어시스턴트가 통일된 인터페이스를 통해 외부 데이터와 도구에 연결할 수 있게 해주는 개방형 표준입니다. “AI를 위한 USB-C”라고 생각하면 됩니다.
✨ 기능
이 서버는 13개 도구, 3개 리소스 프로바이더, 3개 프롬프트 템플릿을 제공하며, MCP의 세 가지 프리미티브를 모두 지원합니다.
🔧 도구 (모델 제어)
AI가 자율적으로 실행할 수 있는 작업:
Tool | Description |
| GitHub 저장소를 쿼리, 언어, 별점으로 검색합니다 |
| 저장소 상세 정보(별점, 포크, 토픽 등)를 가져옵니다 |
| 저장소에서 모든 파일을 읽습니다 |
| 필터를 적용하여 최근 커밋을 나열합니다 |
| 상태/레이블/담당자 필터로 이슈를 나열합니다 |
| 이슈 전체 상세 정보와 댓글을 가져옵니다 |
| 새 이슈를 생성합니다 |
| 이슈에 댓글을 답니다 |
| 상태/브랜치 필터로 PR을 나열합니다 |
| PR 상세 정보와 병합 상태를 가져옵니다 |
| PR 코드 변경 사항을 확인합니다 |
| 사용자의 공개 프로필을 가져옵니다 |
| 사용자의 저장소 목록을 나열합니다 |
📦 리소스 (애플리케이션 제어)
AI가 읽을 수 있는 컨텍스트 데이터:
Resource URI | Description |
| 저장소 README (마크다운) |
| 전체 파일 트리 목록 |
| 언어별 비율과 퍼센트 분석 |
💬 프롬프트 (사용자 트리거)
미리 만들어진 워크플로 템플릿:
Prompt | Description |
| 종합적인 저장소 분석 |
| 모범 사례에 따른 코드 리뷰 |
| 오픈 이슈 분류 및 우선순위 지정 |
Related MCP server: GitHub MCP Server
🏗️ 아키텍처
graph LR
A[AI Assistant] <-->|MCP Protocol| B[GitHub MCP Server]
B <-->|REST API| C[GitHub API]
subgraph "MCP Server (FastMCP)"
B --> D[Tools]
B --> E[Resources]
B --> F[Prompts]
end
subgraph "Tools"
D --> D1[Repos]
D --> D2[Issues]
D --> D3[Pull Requests]
D --> D4[Users]
end🚀 빠른 시작
사전 요구 사항
Python ≥ 3.10
GitHub Personal Access Token (선택 사항이지만 상위 요율 제한을 위해 권장)
설치
# Clone the repository
git clone https://github.com/YOUR_USERNAME/github-mcp-server.git
cd github-mcp-server
# Install dependencies
pip install fastmcp PyGithubGitHub 토근 설정 (선택 사항)
repo 및 read:user 권한이 있는 GitHub Personal Access Token을 만드세요:
# Linux/macOS
export GITHUB_TOKEN=ghp_your_token_here
# Windows (PowerShell)
$env:GITHUB_TOKEN = "ghp_your_token_here"참고: 토큰이 없으면 시간당 60회 API 요청으로 제한됩니다. 토큰이 있으면 시간당 5,000회까지 가능합니다.
서버 실행
# Run directly
fastmcp run src/server.py
# Or with Python
python -m src.serverFastMCP 개발 모드로 테스트
fastmcp dev src/server.py⚙️ 설정
Claude Desktop
Claude Desktop 구성에 추가하세요 (macOS에서는 ~/Library/Application Support/Claude/claude_desktop_config.json, Windows에서는 %APPDATA%\Claude\claude_desktop_config.json):
{
"mcpServers": {
"github": {
"command": "fastmcp",
"args": ["run", "src/server.py"],
"cwd": "/absolute/path/to/github-mcp-server",
"env": {
"GITHUB_TOKEN": "ghp_your_token_here"
}
}
}
}Cursor
Cursor MCP 구성에 추가하세요 (프로젝트의 .cursor/mcp.json 또는 전역 구성):
{
"mcpServers": {
"github": {
"command": "fastmcp",
"args": ["run", "src/server.py"],
"cwd": "/absolute/path/to/github-mcp-server",
"env": {
"GITHUB_TOKEN": "ghp_your_token_here"
}
}
}
}VS Code (GitHub Copilot)
VS Code 설정에 추가하세요 (.vscode/settings.json):
{
"mcp": {
"servers": {
"github": {
"command": "fastmcp",
"args": ["run", "src/server.py"],
"cwd": "/absolute/path/to/github-mcp-server",
"env": {
"GITHUB_TOKEN": "ghp_your_token_here"
}
}
}
}
}📁 프로젝트 구조
github-mcp-server/
├── src/
│ ├── __init__.py
│ ├── server.py # FastMCP server instance & entry point
│ ├── github_client.py # PyGithub client wrapper & error handling
│ ├── resources.py # Resource providers (README, tree, languages)
│ ├── prompts.py # Prompt templates (analyze, review, triage)
│ └── tools/
│ ├── __init__.py
│ ├── repos.py # Repository tools (search, get, file contents, commits)
│ ├── issues.py # Issue tools (list, get, create, comment)
│ ├── pulls.py # Pull request tools (list, get, diff)
│ └── users.py # User tools (profile, repos)
├── pyproject.toml
├── README.md
├── LICENSE
└── .gitignore🛠️ 기술 스택
Technology | Purpose |
고수준 MCP 서버 프레임워크 | |
GitHub REST API 클라이언트 | |
AI-도구 통합을 위한 개방형 표준 |
🤝 기여
Contributions are welcome! Here's how:
기여는 언제나 환영합니다! 방법은 다음과 같습니다:
저장소를 Fork합니다.
피처 브랜치를 생성합니다 (
git checkout -b feature/amazing-feature)변경 사항을 커밋합니다 (
git commit -m 'Add amazing feature')브랜치로 푸시합니다 (
git push origin feature/amazing-feature)Pull Request를 엽니다.
📄 라이선스
이 프로젝트는 MIT 라이선스로 라이선스가 부여됩니다 — 자세한 내용은 LICENSE 파일을 참조하세요.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to analyze GitHub repositories, including fetching repository details, searching, and retrieving README content.4522ISC
- FlicenseNot gradedqualityBmaintenanceEnables AI assistants to perform GitHub operations such as creating repositories, issues, pull requests, and more through natural language.
- FlicenseBqualityDmaintenanceEnables AI assistants to inspect local Git repositories and interact with the GitHub API for reading commits, diffs, files, issues, comments, pull requests, and project boards.10121
- FlicenseCqualityBmaintenanceEnables AI assistants to interact with GitHub repositories via the REST API, supporting repository listing, detail retrieval, and issue management.2
Related MCP Connectors
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
Connect AI assistants to your GitHub-hosted Obsidian vault to seamlessly access, search, and analy…
Screens public GitHub repos and PRs to generate risk maps, findings, and merge-readiness signals.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/pranjal-sen-2004/github-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server