# GitHub MCP server

> Allows an AI client to interact with the GitHub REST API to manage repositories, issues, and pull requests.

- Repository: https://github.com/jaimenbell/github-mcp
- Page: https://hostedmcp.org/servers/jaimenbell/github-mcp
- Transport: stdio
- Stars: 0
- License: MIT
- Latest version: 0.1.1

## Install

### Claude Code

```sh
claude mcp add github-mcp -- uvx jaimenbell-github-mcp
```

### Cursor (`~/.cursor/mcp.json`)

```json
{
  "mcpServers": {
    "github-mcp": {
      "command": "uvx",
      "args": [
        "jaimenbell-github-mcp"
      ]
    }
  }
}
```

### VS Code (`.vscode/mcp.json`)

```json
{
  "servers": {
    "github-mcp": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "jaimenbell-github-mcp"
      ]
    }
  }
}
```

### VS Code CLI

```sh
code --add-mcp '{"name":"github-mcp","type":"stdio","command":"uvx","args":["jaimenbell-github-mcp"]}'
```

### Claude Desktop (`claude_desktop_config.json`)

```json
{
  "mcpServers": {
    "github-mcp": {
      "command": "uvx",
      "args": [
        "jaimenbell-github-mcp"
      ]
    }
  }
}
```

### Codex

```sh
codex mcp add github-mcp -- uvx jaimenbell-github-mcp
```

### Codex config.toml (`~/.codex/config.toml`)

```toml
[mcp_servers.github-mcp]
command = "uvx"
args = ["jaimenbell-github-mcp"]
```

### Gemini CLI

```sh
gemini mcp add -s user github-mcp uvx -- jaimenbell-github-mcp
```

### Gemini settings.json (`~/.gemini/settings.json`)

```json
{
  "mcpServers": {
    "github-mcp": {
      "command": "uvx",
      "args": [
        "jaimenbell-github-mcp"
      ]
    }
  }
}
```

## Environment variables

| Name | Required | Secret | Description |
|---|---|---|---|
| `GITHUB_MCP_ENABLE_WRITE` | no | no |  |
| `GITHUB_MCP_LIVE` | no | no |  |
| `GITHUB_TOKEN` | no | no |  |

## Tools (14)

- `get_repo`
- `list_issues`
- `get_issue`
- `list_pull_requests`
- `get_pull_request`
- `get_file_content`
- `search_repos`
- `get_user`
- `list_commits`
- `create_issue`
- `comment_on_issue`
- `update_issue_state`
- `add_labels`
- `create_pr_review_comment`

## FAQ

### Does this server support writing to GitHub by default?

No, write operations are disabled by default for safety. You must explicitly enable them by setting the GITHUB_MCP_ENABLE_WRITE environment variable to 1.

### Do I need a GitHub token to read repository data?

No, read tools work without authentication using GitHub's unauthenticated tier, though you will be subject to a lower rate limit of 60 requests per hour.

### What happens if I try to use a write tool without enabling it or providing a token?

The server returns structured errors: a `policy_refusal` error if the write group is disabled, or an `auth_required` error if the group is enabled but no token is provided.
