GitHub is a Version Control MCP server that lets Claude Code, Cursor, Windsurf and any MCP-compatible AI agent official GitHub MCP — repos, issues, PRs. Install in 1 minute with mcpizy install github.
Connect your GitHub account once — MCPizy stores the credentials encrypted and uses them whenever you run a recipe in managed mode.
mcpizy install githubnpx -y @modelcontextprotocol/server-githubget_repositoryGet details about a GitHub repository
Inputs
ownerstringrequiredrepostringrequiredlist_issuesList issues in a repository with filters
Inputs
ownerstringrequiredrepostringrequiredstatestringoptionalcreate_issueOpen a new issue with a title and body
Inputs
ownerstringrequiredrepostringrequiredtitlestringrequiredbodystringoptionallist_pull_requestsList pull requests in a repository
Inputs
ownerstringrequiredrepostringrequiredstatestringoptionalcreate_pull_requestOpen a new pull request between two branches
Inputs
ownerstringrequiredrepostringrequiredtitlestringrequiredheadstringrequiredbasestringrequiredget_file_contentsRead a file from a repo at a given ref
Inputs
ownerstringrequiredrepostringrequiredpathstringrequiredcreate_or_update_fileWrite a file to a repo (for commits via the API)
Inputs
ownerstringrequiredrepostringrequiredpathstringrequiredcontentstringrequiredmessagestringrequiredsearch_codeSearch code across GitHub
Inputs
qstringrequiredsearch_repositoriesSearch GitHub repositories
Inputs
querystringrequiredWorks identically across clients. Only the config file path differs.
~/.claude.json{
"mcpServers": {
"github": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-github"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_..."
}
}
}
}.cursor/mcp.json{
"mcpServers": {
"github": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-github"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_..."
}
}
}
}~/.codeium/windsurf/mcp_config.json{
"mcpServers": {
"github": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-github"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_..."
}
}
}
}Create a fine-grained personal access token with repo + issues scopes
GITHUB_PERSONAL_ACCESS_TOKENPaste any of these prompts into Claude Code, Cursor or another MCP-compatible client.
“Show me all open issues in `vercel/next.js` tagged `bug` from the last week”
Uses: list_issues
“Open an issue in my repo titled 'Fix CI flakiness' with a description of the problem”
Uses: create_issue
“Read the README of `anthropics/claude-code` and summarise the quickstart”
Uses: get_file_contents
“Find TypeScript repos with more than 10k stars that mention 'MCP server'”
Uses: search_repositories
“Create a PR from my branch `feat/auth` into `main` with title 'Add OAuth flow'”
Uses: create_pull_request
GitHub MCP is the most installed MCP server in the wild — and for good reason. It exposes the GitHub API as a clean set of agent tools: read repos, list and create issues, manage PRs, search code, write files. For any AI coding workflow, having Claude or Cursor call GitHub directly (instead of you copy-pasting issue text) compresses 10-minute tasks into 30 seconds.
Where it shines: PR review automation. The agent reads `list_pull_requests`, fetches the diff, leaves contextual `create_comment` calls. Issue triage is the second-best use: "look at the 20 oldest open issues, group by area, suggest labels." The official server (run by the Anthropic / Model Context Protocol team) ships ~9 tools that cover 90 % of the daily GitHub surface. There's also a more aggressive community fork with full Actions / projects / packages support if you need deeper workflows.
Compared to Linear MCP for issue work, GitHub wins when your team lives in GitHub-native projects and PR comments are the source of truth. Linear wins for sprint/cycle workflows and richer issue states. We run both — GitHub MCP for code/PRs, Linear MCP for planning. Token cost is lean for read tools (issues, PRs are short), heavier for `get_file_contents` on large files (one 1k-line file ≈ 4k tokens). Authentication is a fine-grained PAT — set the smallest scope (read-only repo + issues for safety), upgrade to write only when you have explicit human approval in the loop.
Fine-grained tokens have surprising scope limits — the "all repositories" toggle does NOT include private repos by default. If `list_pull_requests` returns empty for a private repo, regenerate the token with that repo explicitly selected.
`search_code` uses GitHub's code search index, which is eventually consistent and lossy. Recently pushed code can take 5-30 min to appear; some file types (lock files, vendored deps) are not indexed at all. For "find all callers of X" the agent should fall back to cloning + grep when search returns < 3 hits.
`create_or_update_file` commits via the API, which means no GPG signing, no pre-commit hooks, and no CI run on the same commit unless your branch protection allows it. For anything more than docs / small fixes, ask the agent to push to a branch and open a PR — never to commit directly to main.
Rate limits: 5,000 req/h for authenticated PAT. An aggressive triage of 200 issues at 5 calls each = 1,000 req — fine. A repo-wide audit across 50 repos can hit the wall. The agent should batch via GraphQL or accept paginated reads.
Honest pros/cons against the closest version control MCP servers.
| Server | Strengths | Trade-offs |
|---|---|---|
| GitLab MCP | Same primitives if your team is on GitLab, MIT-licensed | Smaller community, fewer tools maintained, no GraphQL coverage yet |
| Gitea MCP | Self-hostable, lightweight, good for private dev orgs | Tools cover only basic repo/issue ops, no PR automation depth |
| Linear MCP | Better for sprint/cycle planning, cleaner issue states | No code-side primitives — you still need GitHub for PRs |
If GitHub doesn't fit your stack, these Version Control MCP servers solve similar problems.
The GitHub MCP server is an Version Control Model Context Protocol server that lets Claude Code, Cursor, Windsurf, VS Code with Copilot, and other MCP-compatible AI agents official GitHub MCP — repos, issues, PRs. It exposes GitHub's capabilities as tools the AI can call directly from your editor or CLI.
The fastest way is the MCPizy CLI: run `mcpizy install github` and MCPizy will add the server to your `.claude.json` automatically. You can also install it manually by adding an entry under `mcpServers` in `.claude.json` with the command `npx -y @modelcontextprotocol/server-github` and restarting Claude Code.
Yes. The GitHub MCP server is free and open source (see the GitHub repository linked on this page). You may still need a GitHub account or API key to connect the server to the underlying service, but the MCP layer itself has no MCPizy subscription cost.
Yes. Any MCP-compatible client works — including Claude Code, Claude Desktop, Cursor (via `.cursor/mcp.json`), Windsurf, VS Code with Copilot Chat, and custom agents built on the MCP SDK. The same install command targets all of them; only the config file path differs.
Once installed, your AI agent can official GitHub MCP — repos, issues, PRs directly inside your conversation. Typical use cases include asking Claude Code or Cursor to run GitHub operations, inspect results, chain GitHub with other MCP servers (see our Workflow Recipes), and automate repetitive version control tasks without leaving your editor.