Skip to main content
Glama
pranjal-sen-2004

GitHub Activity MCP Server

🚀 GitHub Activity MCP Server

FastMCPPyGithub로 구축된 MCP(Model Context Protocol) 서버로, AI 어시스턴트와 GitHub를 연결합니다 — 저장소를 검색하고 이슈와 PR을 관리하며 기여도를 분석할 수 있습니다.

MCP란 무엇인가요? Model Context Protocol는 AI 어시스턴트가 통일된 인터페이스를 통해 외부 데이터와 도구에 연결할 수 있게 해주는 개방형 표준입니다. “AI를 위한 USB-C”라고 생각하면 됩니다.


✨ 기능

이 서버는 13개 도구, 3개 리소스 프로바이더, 3개 프롬프트 템플릿을 제공하며, MCP의 세 가지 프리미티브를 모두 지원합니다.

🔧 도구 (모델 제어)

AI가 자율적으로 실행할 수 있는 작업:

Tool

Description

search_repositories

GitHub 저장소를 쿼리, 언어, 별점으로 검색합니다

get_repository

저장소 상세 정보(별점, 포크, 토픽 등)를 가져옵니다

get_file_contents

저장소에서 모든 파일을 읽습니다

list_commits

필터를 적용하여 최근 커밋을 나열합니다

list_issues

상태/레이블/담당자 필터로 이슈를 나열합니다

get_issue

이슈 전체 상세 정보와 댓글을 가져옵니다

create_issue

새 이슈를 생성합니다

add_issue_comment

이슈에 댓글을 답니다

list_pull_requests

상태/브랜치 필터로 PR을 나열합니다

get_pull_request

PR 상세 정보와 병합 상태를 가져옵니다

get_pull_request_diff

PR 코드 변경 사항을 확인합니다

get_user_profile

사용자의 공개 프로필을 가져옵니다

list_user_repos

사용자의 저장소 목록을 나열합니다

📦 리소스 (애플리케이션 제어)

AI가 읽을 수 있는 컨텍스트 데이터:

Resource URI

Description

github://repo/{owner}/{repo}/readme

저장소 README (마크다운)

github://repo/{owner}/{repo}/tree

전체 파일 트리 목록

github://repo/{owner}/{repo}/languages

언어별 비율과 퍼센트 분석

💬 프롬프트 (사용자 트리거)

미리 만들어진 워크플로 템플릿:

Prompt

Description

analyze-repo

종합적인 저장소 분석

review-pr

모범 사례에 따른 코드 리뷰

issue-triage

오픈 이슈 분류 및 우선순위 지정


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 PyGithub

GitHub 토근 설정 (선택 사항)

reporead: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.server

FastMCP 개발 모드로 테스트

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

FastMCP

고수준 MCP 서버 프레임워크

PyGithub

GitHub REST API 클라이언트

Model Context Protocol

AI-도구 통합을 위한 개방형 표준


🤝 기여

Contributions are welcome! Here's how:

기여는 언제나 환영합니다! 방법은 다음과 같습니다:

  1. 저장소를 Fork합니다.

  2. 피처 브랜치를 생성합니다 (git checkout -b feature/amazing-feature)

  3. 변경 사항을 커밋합니다 (git commit -m 'Add amazing feature')

  4. 브랜치로 푸시합니다 (git push origin feature/amazing-feature)

  5. Pull Request를 엽니다.


📄 라이선스

이 프로젝트는 MIT 라이선스로 라이선스가 부여됩니다 — 자세한 내용은 LICENSE 파일을 참조하세요.


Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

View all related MCP servers

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.

View all MCP Connectors

Latest Blog Posts

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