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 `repo` scope 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 53 tools
Most tools have clearly distinct resource+action targets, and descriptions explicitly disambiguate close pairs like github_list_open_issues_prs vs github_search_issues_prs and github_add_pr_comments vs github_add_inline_pr_comment. A few comment-related and PR-content getters are close enough that an agent could pick the wrong one without reading carefully, so it is not a perfect 5.
The overwhelming majority follow a github_<verb>_<noun> pattern with consistent verbs like list, get, create, update, delete, set, add, and search. The pattern is broken by generic 'choose' and the oddly-named 'github_pr_issue_analyser_ui', and there is minor PR/pull_request abbreviation variance, so it is not a perfect 5.
53 tools is far above the heavy threshold, and the set spans many unrelated domains including releases, tags, project boards, UI rendering, and skills, going well beyond the PR/issue analysis implied by the server name. Each domain is internally well-covered, but the server would be easier to navigate if split into focused servers or substantially trimmed.
The core issue and PR workflows are strongly covered: create/get/update/search issues, PR content/diff/status/linked issues/merge/update, plus comments and reviews. The main gap is issue comments, since only PR comments are supported, and the release/tag/project-board tooling is tangential to the stated analyser purpose, but the primary workflows have no dead ends.