GitHub Skill
GitHub operations via nguyenvanduocit/github-mcp.
Important: This is github-mcp, NOT the official gh CLI. Do not confuse them.
Environment
- Go: !
which go 2>/dev/null || echo "NOT INSTALLED"
- github-mcp: !
which github-mcp 2>/dev/null || echo "NOT INSTALLED"
- github-cli: !
which github-cli 2>/dev/null || echo "NOT INSTALLED"
- GITHUB_TOKEN: !
[ -n "$GITHUB_TOKEN" ] && echo "SET" || echo "NOT SET"
- MCP configured: !
cat .mcp.json 2>/dev/null | grep -q github && echo "YES" || echo "NO"
Install (skip if already installed above)
go install github.com/nguyenvanduocit/github-mcp@latest
go install github.com/nguyenvanduocit/github-mcp/cmd/github-cli@latest
Add to .mcp.json:
{
"mcpServers": {
"github": {
"command": "github-mcp",
"env": {
"GITHUB_TOKEN": "ghp_xxxxxxxxxxxxxxxxxxxx"
}
}
}
}
GITHUB_TOKEN — Personal access token from https://github.com/settings/tokens. Restart Claude Code after configuring.
MCP Tools (prefix: github_)
Repository Operations
github_list_repos(owner: "orgname")
github_get_repo(owner: "orgname", repo: "project")
Pull Request Management
| Tool |
Usage |
github_list_prs |
(owner, repo, state: "open") |
github_get_pr |
(owner, repo, pr_number: 42) |
github_create_pr |
(owner, repo, title, body, head, base) |
github_create_pr_comment |
(owner, repo, pr_number, body) |
github_approve_pr |
(owner, repo, pr_number: 42) |
Issue Management
| Tool |
Usage |
github_list_issues |
(owner, repo, state: "open") |
github_get_issue |
(owner, repo, issue_number: 10) |
github_comment_issue |
(owner, repo, issue_number, body) |
github_issue_action |
(owner, repo, issue_number, action: "close"|"reopen") |
File Operations
github_get_file(owner: "org", repo: "project", path: "src/main.go", ref: "main")
CLI (fallback if MCP not configured)
github-cli list-repos --owner orgname --env .env
github-cli get-pr --owner org --repo project --pr-number 42 --env .env
github-cli create-pr --owner org --repo project --title "Feature" --head feature --base main --env .env
github-cli approve-pr --owner org --repo project --pr-number 42 --env .env
github-cli list-issues --owner org --repo project --state open --env .env
github-cli comment-issue --owner org --repo project --issue-number 10 --body "Done" --env .env
github-cli issue-action --owner org --repo project --issue-number 10 --action close --env .env
github-cli get-file --owner org --repo project --path src/main.go --ref main --env .env
Flags: --env (path to .env with credentials), --output text|json
Workflows
PR Review Flow
github_list_prs(owner: "org", repo: "project", state: "open")
github_get_pr(owner: "org", repo: "project", pr_number: 42)
github_create_pr_comment(owner: "org", repo: "project", pr_number: 42, body: "Feedback...")
github_approve_pr(owner: "org", repo: "project", pr_number: 42)
Issue Triage
github_list_issues(owner: "org", repo: "project", state: "open")
github_get_issue(owner: "org", repo: "project", issue_number: 10)
github_comment_issue(owner: "org", repo: "project", issue_number: 10, body: "Triaged")
1---2name: aio-github3description: Read and manage GitHub repos, pull requests, issues, releases, and branches via github-mcp (auto-installs if missing). Use when the user mentions a GitHub URL, asks to open/review/merge a PR, comment on an issue, list repos, trigger a release, or run any GitHub action programmatically.4---56# GitHub Skill78GitHub operations via [nguyenvanduocit/github-mcp](https://github.com/nguyenvanduocit/github-mcp).910**Important:** This is `github-mcp`, NOT the official `gh` CLI. Do not confuse them.1112## Environment1314- Go: !`which go 2>/dev/null || echo "NOT INSTALLED"`15- github-mcp: !`which github-mcp 2>/dev/null || echo "NOT INSTALLED"`16- github-cli: !`which github-cli 2>/dev/null || echo "NOT INSTALLED"`17- GITHUB_TOKEN: !`[ -n "$GITHUB_TOKEN" ] && echo "SET" || echo "NOT SET"`18- MCP configured: !`cat .mcp.json 2>/dev/null | grep -q github && echo "YES" || echo "NO"`1920## Install (skip if already installed above)2122```bash23go install github.com/nguyenvanduocit/github-mcp@latest24go install github.com/nguyenvanduocit/github-mcp/cmd/github-cli@latest25```2627Add to `.mcp.json`:2829```json30{31 "mcpServers": {32 "github": {33 "command": "github-mcp",34 "env": {35 "GITHUB_TOKEN": "ghp_xxxxxxxxxxxxxxxxxxxx"36 }37 }38 }39}40```4142`GITHUB_TOKEN` — Personal access token from https://github.com/settings/tokens. Restart Claude Code after configuring.4344## MCP Tools (prefix: `github_`)4546### Repository Operations4748```49github_list_repos(owner: "orgname")50github_get_repo(owner: "orgname", repo: "project")51```5253### Pull Request Management5455| Tool | Usage |56|------|-------|57| `github_list_prs` | `(owner, repo, state: "open")` |58| `github_get_pr` | `(owner, repo, pr_number: 42)` |59| `github_create_pr` | `(owner, repo, title, body, head, base)` |60| `github_create_pr_comment` | `(owner, repo, pr_number, body)` |61| `github_approve_pr` | `(owner, repo, pr_number: 42)` |6263### Issue Management6465| Tool | Usage |66|------|-------|67| `github_list_issues` | `(owner, repo, state: "open")` |68| `github_get_issue` | `(owner, repo, issue_number: 10)` |69| `github_comment_issue` | `(owner, repo, issue_number, body)` |70| `github_issue_action` | `(owner, repo, issue_number, action: "close"\|"reopen")` |7172### File Operations7374```75github_get_file(owner: "org", repo: "project", path: "src/main.go", ref: "main")76```7778## CLI (fallback if MCP not configured)7980```bash81github-cli list-repos --owner orgname --env .env82github-cli get-pr --owner org --repo project --pr-number 42 --env .env83github-cli create-pr --owner org --repo project --title "Feature" --head feature --base main --env .env84github-cli approve-pr --owner org --repo project --pr-number 42 --env .env85github-cli list-issues --owner org --repo project --state open --env .env86github-cli comment-issue --owner org --repo project --issue-number 10 --body "Done" --env .env87github-cli issue-action --owner org --repo project --issue-number 10 --action close --env .env88github-cli get-file --owner org --repo project --path src/main.go --ref main --env .env89```9091Flags: `--env` (path to .env with credentials), `--output text|json`9293## Workflows9495### PR Review Flow961. `github_list_prs(owner: "org", repo: "project", state: "open")`972. `github_get_pr(owner: "org", repo: "project", pr_number: 42)`983. `github_create_pr_comment(owner: "org", repo: "project", pr_number: 42, body: "Feedback...")`994. `github_approve_pr(owner: "org", repo: "project", pr_number: 42)`100101### Issue Triage1021. `github_list_issues(owner: "org", repo: "project", state: "open")`1032. `github_get_issue(owner: "org", repo: "project", issue_number: 10)`1043. `github_comment_issue(owner: "org", repo: "project", issue_number: 10, body: "Triaged")`