Official Dev Tools

GitHub

GitHub's official server: repos, issues, PRs, code search.

Works with: Claude DesktopClaude CodeCursorWindsurfClineVS Code (Continue)Zed

Official server · page last edited

How to install the GitHub MCP server

Add this to your Claude Desktop MCP configuration:

Add https://api.githubcopilot.com/mcp/ as a remote MCP server and sign in with OAuth or a personal access token. To run it locally instead, use docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN ghcr.io/github/github-mcp-server

Add this to your Claude Code MCP configuration:

Add https://api.githubcopilot.com/mcp/ as a remote MCP server and sign in with OAuth or a personal access token. To run it locally instead, use docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN ghcr.io/github/github-mcp-server

Add this to your Cursor MCP configuration:

Add https://api.githubcopilot.com/mcp/ as a remote MCP server and sign in with OAuth or a personal access token. To run it locally instead, use docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN ghcr.io/github/github-mcp-server

Add this to your Windsurf MCP configuration:

Add https://api.githubcopilot.com/mcp/ as a remote MCP server and sign in with OAuth or a personal access token. To run it locally instead, use docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN ghcr.io/github/github-mcp-server

Add this to your Cline MCP configuration:

Add https://api.githubcopilot.com/mcp/ as a remote MCP server and sign in with OAuth or a personal access token. To run it locally instead, use docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN ghcr.io/github/github-mcp-server

Add this to your VS Code (Continue) MCP configuration:

Add https://api.githubcopilot.com/mcp/ as a remote MCP server and sign in with OAuth or a personal access token. To run it locally instead, use docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN ghcr.io/github/github-mcp-server

Add this to your Zed MCP configuration:

Add https://api.githubcopilot.com/mcp/ as a remote MCP server and sign in with OAuth or a personal access token. To run it locally instead, use docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN ghcr.io/github/github-mcp-server

Built by ContextBoltThis directory is built by ContextBolt: MCP-native memory and SEO tools that run alongside GitHub in the same client.

Explore ContextBolt

The GitHub MCP server is GitHub’s own server, maintained in the github/github-mcp-server repository. It gives Claude read and (optionally) write access to your GitHub repositories: code search, issue management, PR review, and more. GitHub hosts a remote version at https://api.githubcopilot.com/mcp/, and you can also run it locally with Docker.

The older Anthropic reference server for GitHub is archived and its npm package is deprecated, so use GitHub’s server instead. Because GitHub is central to dev workflows, it is a natural first install for engineers and technical founders.

Why use it

GitHub is where most engineering work lives. Adding it as an MCP server collapses dozens of tab-switches per day into single prompts. “Show me the PRs that touched our auth middleware in the last week” goes from a manual GitHub UI tour to a one-line answer.

For solo founders running Claude Code, the GitHub server is what makes “fix this issue” workflows feel native. Claude reads the issue, searches the relevant code, opens a PR, and links them together without leaving the conversation.

What it actually does

A wide surface, grouped into toolsets: repositories and code, issues, pull requests, GitHub Actions workflows, code security and more. You can turn toolsets on or off to keep the tool list small.

Practical patterns:

  • “Find all open PRs in our org that have been waiting for review for more than three days.”
  • “Open an issue in repo X titled ‘fix sitemap lastmod bug’, label it ‘bug’ and assign to @david.”
  • “Search every repo I own for usages of the deprecated useEffectAsync hook.”

Gotchas

Scope your access narrowly. A token with write permissions can do a lot of damage if Claude misinterprets a prompt. Default to read-only and grant write only when you need it. Fine-grained personal access tokens let you limit access to chosen repositories.

Rate limits apply. GitHub’s API caps at 5,000 requests per hour per token. Heavy queries (e.g. searching across hundreds of repos) can chew through this quickly. If you hit the limit, the server will return clear errors but Claude may not always interpret them gracefully.

Combine with Sentry for an end-to-end debug flow: error in production → Sentry pulls the stack trace → GitHub finds the introducing PR → Claude drafts a fix.

Example prompts for the GitHub MCP server

Show me open PRs in modelcontextprotocol/servers from this week.

Search my repos for usages of the deprecated useEffectAsync hook.

Open an issue in contextbolt/landing titled 'fix sitemap lastmod'.

Built by ContextBolt

This directory is built by ContextBolt

We build MCP-native tools that give your AI the context it cannot reach on its own. Bookmarks turns your saved posts into agent-queryable memory. SEO puts live keyword and ranking data inside Claude. Both run alongside GitHub in the same client.

Explore the products →

GitHub MCP server: FAQs

What permissions does the GitHub MCP server need?

Either an OAuth login or a GitHub personal access token. Scope a token as narrowly as possible, and grant write permissions only for the work you need. The server also has a read-only mode (the --read-only flag) that offers no write tools at all.

Can it write to my repos?

Yes. With write scopes it can open issues, comment on PRs, create branches, and push commits. Claude will ask before each write operation in Claude Desktop. In Claude Code with auto-approve enabled, be careful.

Does it support GitHub Enterprise?

Yes. GitHub's server documents Enterprise support. Set the GITHUB_HOST environment variable (or the --gh-host flag) to your GitHub Enterprise Server or ghe.com address when running the local server.

How is it different from gh CLI in Claude Code?

gh CLI runs as a shell command and Claude has to parse text output. The MCP server returns structured JSON, which Claude reasons about more reliably. For complex multi-step queries (e.g. 'find PRs that touched file X across these three repos'), the MCP server wins.

Can multiple users share one server?

Each user should connect with their own login or token. A shared local process uses whatever token is in its environment, so sharing a process means sharing identity.