Skip to content
Developer ToolsClaude Desktop Guide

GitHub API Claude Desktop Integration

This guide explains how to configure Claude Desktop (Mac and Windows) to use the GitHub API API through the Model Context Protocol (MCP). The integration exposes 4 API endpointsas callable tools inside Claude's chat interface, including Get a repository, List repository issues, List pull requests, and more. Setup requires OAuth2 credentials and takes approximately 2 minutes. The server runs locally via npx and communicates over STDIO transport. Paste the JSON configuration below into your claude_desktop_config.json file to get started.

Integration Specs

ClientClaude Desktop
Runtimenpx
AuthenticationOAuth2
Setup Time~2 min

Setup Instructions

1

Open Claude Settings

Launch Claude Desktop, open Settings (click your profile) → Developer → click 'Edit Config'.

2

Locate configuration file

This opens your local 'claude_desktop_config.json' file in your system editor.

3

Insert Server Config JSON

Paste the JSON configuration schema block (provided below) into the 'mcpServers' object.

4

Add authentication credentials

Replace placeholders in the 'env' object with your actual OAuth2 credentials.

5

Restart Claude app

Save the config file and restart Claude Desktop to load your new tools.

Configuration JSON

claude_desktop_config.json

Copy and paste this config snippet inside your local configuration file.

{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-github"
      ],
      "env": {
        "GITHUB_TOKEN": "your_github_personal_access_token"
      }
    }
  }
}

Required Environment Keys

Provide these variable keys in your local environment section:

GITHUB_TOKEN

Replace your_github_personal_access_token with your secret key credentials.

Available Tools (4)

These endpoints are parsed from the OpenAPI schema and converted to Claude-compatible tools:

GET/repos/{owner}/{repo}
Get a repository
GET/repos/{owner}/{repo}/issues
List repository issues
GET/repos/{owner}/{repo}/pulls
List pull requests
GET/repos/{owner}/{repo}/contents/{path}
Get repository content