Cédric Rittié

GitHub
MCP · Project

GitHub

The GitHub MCP exposes issues, PRs, reviews, actions. Mostly used to manage the backlog from Claude: triage, labels, milestones, PR summaries before review.

Use cases

  • Triage a 200-issue backlog
  • Summarize a PR before review
  • Create an issue from a bug report

Installation

1.Create a Personal Access Token on GitHub: Settings → Developer settings → Personal access tokens → Fine-grained tokens. Scopes: Contents (read), Issues (read/write), Pull requests (read/write).

2.One line, one terminal
$ claude mcp add github -- npx -y @modelcontextprotocol/server-github --token=YOUR_PAT

Need to install Claude Code first? See the Claude Code page · Official docs

Concrete examples

"Triage les 80 issues ouvertes du repo 'my-app' : lesquelles sont encore pertinentes, lesquelles dupliquent, lesquelles peuvent être fermées ?"

Reads each issue + its comments, compares titles/bodies to detect duplicates, proposes one action per issue.

Sample output
→ Reading 80 open issues in my-app...

Proposed triage

Still relevant (34)
- #122 Mobile login bug — reproduced this week, high priority
- #98 Sort by date in table — requested 3 times, not implemented
- [32 others listed]

Duplicates (12 → keep 4)
- #87, #93, #117 all about the same iOS scroll bug → close #93 and #117, keep #87
- #56 and #89 request the same feature → close #89
- [3 other clusters]

To close (18)
- #12, #34: no comments in 14 months, abandoned feature request
- #71: bug fixed in PR #445 (not linked)
- [15 others]

Needs clarification (16)
- Issues with zero actionable details. I can draft a comment asking
  for repro/context.

Want me to apply? (Won't close anything without your ok.)
"Résume la PR #445 avant que je la review : changements, risques, questions à poser."

Reads diff + comments + description. Returns a structured pre-review summary.

Sample output
→ Reading PR #445 "Refactor auth middleware"
→ 24 files changed, +842 / -317 lines, 3 review comments

Changes
- Replaced jsonwebtoken with jose (ESM, lighter)
- Extracted refresh token logic into a custom hook
- Migrated tests from Jest to Vitest

Risks
1. High: JWT lib change. Existing tokens stay valid, but any signing
   config must be reviewed (see commit f4a2b1).
2. Medium: the useRefreshToken hook doesn't handle multi-tab users
   (possible race condition).
3. Low: Vitest migration, all tests pass but 2 are skipped (comment
   "flaky, fix later" in code).

Questions to ask
- Why jose over next-auth? Rationale not in the PR.
- Is the multi-tab case intentionally out-of-scope or followup?
- Will the 2 skipped tests be re-enabled before merge?