# GitHub MCP

> Manage your entire development lifecycle with this MCP. Your AI agent connects directly to your GitHub account, letting you review pull requests, audit commit history, list open issues, and monitor CI/CD workflows—all through conversation. Stop context switching; start coding.

## Overview
- **Category:** loved-by-devs
- **Price:** Free
- **Tags:** version-control, code-review, ci-cd, repository-management, issue-tracking, workflow-automation

## Description

Need to know what's happening in a repo without opening the browser? This MCP gives your AI agent direct access to your entire GitHub account. You can talk to it like an engineering lead, getting status updates on branches, tracking pull requests, or auditing commits across different teams. It lets you list all repositories for the user and even search them using advanced qualifiers like language type or star count. Want to start a new task? You can create issues with specific labels and markdown descriptions, or check recent GitHub Actions runs to see if the latest build failed. By connecting through Vinkius's catalog, your AI client becomes a single point of truth for every dev workflow, letting you focus on code, not tabs.

## Tools

### create_issue
Generates a brand new GitHub issue with specified title, body, and labels.

### get_issue
Retrieves all details for a single GitHub issue using its number.

### get_user
Verifies your connection by retrieving basic information about the authenticated GitHub user.

### get_pull_request
Fetches detailed status and review history for a specific pull request number.

### get_release_by_tag
Retrieves full release details, including assets and publish dates, based on a git tag name.

### get_repo
Gets detailed information about any specific GitHub repository by owner and name.

### list_branches
Lists all branches within a repository, noting which one is the default or protected branch.

### list_commits
Retrieves a list of commits on a specified branch, showing the author, message, and date for each.

### list_issues
Lists all issues in a repo, allowing filtering by state like open or closed.

### list_pull_requests
Provides an overview of pull requests, including their merge status and draft status.

### list_releases
Lists all releases associated with a repository in reverse chronological order.

### list_repos
Displays a list of repositories owned by the authenticated user, showing details like language and star counts.

### list_workflow_runs
Lists recent GitHub Actions workflow runs for a repository, including their final status (success or failure).

### search_repos
Searches across all repositories using powerful qualifiers like language type or star counts.

## Prompt Examples

**Prompt:** 
```
Show me all open issues in my backend-api repo.
```

**Response:** 
```
I found 7 open issues in backend-api. The most critical is #142 'Database connection timeout on high load' (bug, high-priority, assigned to @alice). Other notable issues include #138 'Add rate limiting middleware' and #135 'Refactor auth middleware to support OAuth2'.
```

**Prompt:** 
```
What's the status of recent workflow runs on main branch?
```

**Response:** 
```
The last 5 workflow runs on main: CI Pipeline (success, 12m ago), Deploy to Staging (success, 10m ago), Security Scan (success, 8m ago), Release Build (failure, 2h ago — failed at 'build Docker image' step) and Integration Tests (success, 3h ago).
```

**Prompt:** 
```
Search for popular Python machine learning repos with over 1000 stars.
```

**Response:** 
```
I found several highly-starred Python ML repos: huggingface/transformers (119k stars), scikit-learn/scikit-learn (58k stars), tensorflow/tensorflow (185k stars), pytorch/pytorch (79k stars) and microsoft/ML-For-Beginners (27k stars). Would you like more details on any of these?
```

## Capabilities

### Audit repository status
Get details about specific repositories, list all available branches in a project, and search across your entire portfolio using advanced query syntax.

### Manage development tasks
Create new issues or inspect existing ones by retrieving their number, title, labels, and assignment status.

### Track code changes and reviews
Review pull requests for merge status, view commit logs across branches, and list all releases attached to a specific tag.

### Monitor automated workflows
Check the recent runs of GitHub Actions pipelines to determine if deployments succeeded or failed.

## Use Cases

### Triage a major bug report
A maintainer gets a critical issue ticket. They ask their agent to use list_issues filtered by 'bug' and then check the last commits using list_commits on that repo. The agent identifies the relevant code segment, allowing the maintainer to assign an owner immediately.

### Review cross-team feature integration
The tech lead needs to know if two different teams' features can coexist before merging. They ask their agent to get_pull_request for both branches and then check the list_workflow_runs status, ensuring all necessary CI/CD tests passed.

### Find a suitable project boilerplate
A new developer needs a starting point. Instead of browsing manually, they ask their agent to search_repos for 'Python' with stars greater than 10k and language:python. The results provide instant, actionable suggestions.

### Track compliance or version changes
The ops engineer needs to confirm which version of the service was deployed last month. They ask their agent to list_releases using a date qualifier, instantly verifying the exact git tag and associated assets.

## Benefits

- Stop context switching: You don't need to open GitHub.com or switch tabs; your agent handles the data retrieval directly in the chat window.
- Full lifecycle visibility: Quickly check commit logs using list_commits, review PRs with get_pull_request, and monitor CI/CD health via list_workflow_runs all from one prompt.
- Advanced repository discovery: Use search_repos to find highly-starred or language-specific repos across your organization's entire catalog instantly.
- Issue management at scale: List issues and create new ones using create_issue, ensuring every bug report has the right labels and owner assigned.
- Auditability for managers: Get a comprehensive view of all releases with list_releases and check repository details with get_repo, making audits simple.

## How It Works

The bottom line is that you never have to leave your chat interface or IDE to manage development tasks again.

1. Subscribe to this MCP and enter your GitHub Personal Access Token.
2. Connect it to any AI-compatible client, like Cursor or Claude.
3. Ask your agent a question—like 'Show me all open issues in the backend repo'—and get structured data back instantly.

## Frequently Asked Questions

**How do I check if my account token is working with get_user?**
Run the get_user tool first. It retrieves your login name, company, and follower count, confirming that your MCP connection and Personal Access Token are valid.

**Can list_issues filter by assignee?**
Yes, the list_issues tool returns details about who is assigned to the issue. You can prompt your agent to specifically find issues assigned to a certain team member.

**Is there a way to search for repos across all my accounts? Use search_repos.**
The search_repos tool supports powerful qualifiers, allowing you to filter by language, star count (e.g., 'stars:>1000'), or organization name.

**What is the difference between list_issues and list_pull_requests?**
list_issues shows general bugs and feature requests. list_pull_requests focuses specifically on code review items, providing details about draft status and merge readiness.

**How can I check the history of a specific branch? Use list_commits.**
You use list_commits by specifying the owner, repo, and the target branch name. The results provide the SHA, author, message, and date for every commit.