Skip to main content
Glama
bugzy-ai

GitHub MCP Server

by bugzy-ai
README.md
# GitHub MCP Server

A Model Context Protocol (MCP) server for GitHub operations. This server provides tools for listing PRs, getting commit details, and comparing changes - useful for understanding what changed in a build or investigating test failures.

## Installation

```bash
npm install -g @bugzy-ai/github-mcp-server
```

Or use with npx:

```bash
npx @bugzy-ai/github-mcp-server
```

## Configuration

Set the `GITHUB_TOKEN` environment variable with a token that has `repo` scope:

```bash
export GITHUB_TOKEN=ghp_your_token_here
```

## Available Tools

### github_list_prs
List pull requests in a repository with optional filters.

**Parameters:**
- `owner` (required): Repository owner
- `repo` (required): Repository name
- `state` (optional): Filter by state - "open", "closed", or "all" (default: "all")
- `base` (optional): Filter by base branch
- `sort` (optional): Sort by "created", "updated", "popularity", or "long-running"
- `direction` (optional): Sort direction - "asc" or "desc"
- `per_page` (optional): Results per page (max 100)
- `page` (optional): Page number

### github_get_pr
Get detailed information about a specific pull request.

**Parameters:**
- `owner` (required): Repository owner
- `repo` (required): Repository name
- `pull_number` (required): Pull request number

### github_list_commits
List commits on a branch with optional date range filters.

**Parameters:**
- `owner` (required): Repository owner
- `repo` (required): Repository name
- `sha` (optional): Branch name, tag, or commit SHA
- `since` (optional): Only commits after this date (ISO 8601)
- `until` (optional): Only commits before this date (ISO 8601)
- `per_page` (optional): Results per page (max 100)
- `page` (optional): Page number

### github_get_commit
Get detailed information about a specific commit.

**Parameters:**
- `owner` (required): Repository owner
- `repo` (required): Repository name
- `ref` (required): Commit SHA, branch name, or tag name

### github_compare_commits
Compare two commits, branches, or tags.

**Parameters:**
- `owner` (required): Repository owner
- `repo` (required): Repository name
- `base` (required): Base ref (branch, tag, or SHA)
- `head` (required): Head ref (branch, tag, or SHA)
- `per_page` (optional): Results per page (max 100)
- `page` (optional): Page number

## MCP Configuration

Add to your `.mcp.json`:

```json
{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@bugzy-ai/github-mcp-server"],
      "env": {
        "GITHUB_TOKEN": "${GITHUB_TOKEN}"
      }
    }
  }
}
```

## License

Apache-2.0

TDQS

A3.8/5.0

Scored across 5 tools

Disambiguation5/5

Each tool targets a clearly distinct resource and action: listing PRs, getting PR details, listing commits, getting commit details, and comparing refs. Even list_commits vs compare_commits are distinguishable by purpose, one showing branch history and the other showing changes between two refs.

Naming Consistency5/5

All tool names follow the consistent pattern github_<verb>_<noun>, using snake_case throughout. The verbs list/get/compare are predictable and match the operation each tool performs.

Tool Count5/5

Five tools is a well-scoped set for a focused GitHub read-only server covering PRs and commits. Each tool has a clear purpose and none feel redundant or unnecessary.

Completeness4/5

The set provides solid read-only coverage for exploring pull requests, commits, and diffs. Minor gaps exist, such as no direct branch listing or repository-level search, but these can be worked around using compare_commits and the included PR/commit detail endpoints.

Maintenance

ActivityInactive
ResponsivenessNo issues