GitHub PR Issue Analyser
# MCP for GitHub PR, Issues, Tags and Releases
[](https://github.com/saidsef/mcp-github-pr-issue-analyser/actions/workflows/ci.yml) [](https://github.com/saidsef/mcp-github-pr-issue-analyser/actions/workflows/tag_release.yml) [](https://qlty.sh/gh/saidsef/projects/mcp-github-pr-issue-analyser) [](https://app.codacy.com/gh/saidsef/mcp-github-pr-issue-analyser/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade)
An [MCP](https://www.anthropic.com/news/model-context-protocol) server that connects an LLM to GitHub's repository management features. It analyses pull requests, manages issues, and handles tags and releases, over stdio or HTTP, with a static token or GitHub OAuth2.
- **Pull requests** - fetch diffs, content, linked issues and CI status, create, comment, review, merge and update, close, retarget, label and flip draft status, read and correct posted comments
- **Issues** - create, update, list, search and assign, read a repository's labels, run milestones and file issues under them
- **Releases** - tag commits, publish releases, and list, correct or withdraw what is published
- **Users** - profile lookup, contribution activity and star growth via GraphQL
- **Repositories** - list what a user, an organisation or the caller owns, and read any file or directory tree at a branch, tag or SHA
The full tool list is in [docs/tools.md](./docs/tools.md).
## Quick start
```sh
export GITHUB_TOKEN="<github-token>"
uvx https://github.com/saidsef/mcp-github-pr-issue-analyser.git
```
Then add it to your client:
```json
{
"mcpServers": {
"github_prs_issues": {
"command": "uvx",
"args": [
"https://github.com/saidsef/mcp-github-pr-issue-analyser.git"
],
"env": {
"GITHUB_TOKEN": "<your-github-token>"
}
}
}
}
```
For HTTP mode, Docker, Kubernetes and OAuth2, see the documentation below.
## Documentation
The pages below are also published on [Read the Docs](https://mcp-github-pr-issue-analyser.readthedocs.io/en/latest/architecture/).
| Page | Contents |
|------|----------|
| [Installation](./docs/installation.md) | Requirements, running from source, Docker, Kubernetes |
| [Configuration](./docs/configuration.md) | Auth modes, environment variables, OAuth App setup, token stores |
| [Client configuration](./docs/mcp-clients.md) | Ready-to-paste configs for token and OAuth2, per client |
| [Tools](./docs/tools.md) | Every tool the server registers, and the skills that drive them |
| [Architecture](./docs/architecture.md) | Request path from client to GitHub API |
| [Metrics](./docs/metrics.md) | Prometheus endpoint, metric names, scrape setup |
## Requirements
Python 3.14, and a GitHub personal access token with the `repo` and `workflow` scopes or a GitHub OAuth App.
## Source
Our latest and greatest source of *mcp-github-pr-issue-analyser* can be found on [GitHub](https://github.com/saidsef/mcp-github-pr-issue-analyser). [Fork us](https://github.com/saidsef/mcp-github-pr-issue-analyser/fork)!
## Contributing
We would :heart: you to contribute by making a [pull request](https://github.com/saidsef/mcp-github-pr-issue-analyser/pulls).
Please read the official [Contribution Guide](./CONTRIBUTING.md) for more information on how you can contribute.
TDQS
Scored across 66 tools
Most tools target a distinct resource+action, but the generic github_api_read/write/delete trio deliberately overlaps every specific tool, and the comment family (add_pr_comments vs add_inline_pr_comment vs reply_to_review_comment vs update_pr_comment) plus list_open_issues_prs vs search_issues_prs require careful reading to pick correctly. The detailed descriptions help, but an agent can plausibly reach for a generic or wrong-shaped tool in several places.
The vast majority follow a predictable github_verb_noun pattern (get_pr_diff, list_pr_reviews, update_issue, create_release). Outliers are limited: bare 'choose' and 'github_pr_issue_analyser_ui' break the verb_noun convention, and github_add_pr_comments uses a plural noun where others are singular.
At 66 tools this is far beyond a well-scoped set, and the surface balloons well past the 'PR Issue Analyser' title into projects, releases, tags, Actions, branches, files, and a Prefab UI sandbox. Many of these belong to separate concerns an agent looking for PR/issue analysis will rarely need.
Coverage is broad and near-complete: full PR lifecycle (create, update, merge, draft, reviewers, inline/conversation comments, reviews), issue/milestone/label reads, releases and tags with careful delete semantics, project boards, and branch/workflow/file reads. Remaining gaps (e.g. label CRUD, comment deletion, PR review dismissal) are reachable through the generic api_* escape hatch, so no hard dead ends.