Cursor で Agent に Issue 検索、PR 作成、リポジトリ内ファイル読み取りを任せたい——のに「結局どの GitHub MCP Server を入れるべきか」で止まっている:npm の旧パッケージはすでに非推奨で、ネット上の手順もバラバラです。本記事は GitHub 公式リポジトリ github/github-mcp-server(2026-07-31 時点の最新 v1.7.0)を基準に、リモートホスト型、Docker ローカル、プリビルドバイナリ、ソースビルドの 4 ルートを整理します。Windows / Linux / macOS いずれもそのまま使えます。
本記事の範囲: PAT 取得、各 OS の設定ファイルパス、Cursor / Claude Desktop / VS Code Copilot への接続例、7 ステップの受け入れチェックリストを扱います。非公式のサードパーティ Server 実装は対象外です。
Quick Answer:4 つのデプロイ方式の選び方
まず下表で 30 秒以内にルートを決めましょう。個人開発者の多くは方式 1(リモートホスト)から始め、社内ネットワークや厳格な資格情報分離が必要なら方式 2(Docker)を選びます。
| 方式 | 向いている人 | 前提条件 | 運用コスト | おすすめ度 |
|---|---|---|---|---|
| ① リモートホスト | 個人の試用、クロスプラットフォーム統一設定 | GitHub PAT + HTTP MCP 対応クライアント | 運用ほぼ不要 | ⭐⭐⭐⭐⭐ |
| ② Docker ローカル | オフライン、カスタム環境、チーム分離 | Docker Desktop(Win/macOS)または Docker Engine(Linux) | 低 | ⭐⭐⭐⭐ |
| ③ プリビルドバイナリ | Docker を入れたくない、ネイティブプロセス希望 | 対応プラットフォームの Release をダウンロード | 中 | ⭐⭐⭐ |
| ④ ソースビルド | コード貢献、カスタムブランチ | Go 1.24+ | 高 | ⭐⭐ |
@modelcontextprotocol/server-github は 2025 年 4 月に非推奨となりました。公式 github/github-mcp-server へ移行してください。デプロイ前の準備:PAT、ホストアプリ、設定パス
1. GitHub Personal Access Token の作成
GitHub → Settings → Personal access tokens から Fine-grained または Classic PAT を作成します。よく使う scope は次のとおりです。
repo— リポジトリ内容、ブランチ、コミットの読み書きread:org— 組織とチーム情報の読み取り- 必要に応じて
read:project、workflowなどを追加(Agent に任せる操作範囲による)
GITHUB_PERSONAL_ACCESS_TOKEN で注入します。2. MCP ホストアプリと設定ファイルのパス
クライアントごとに設定ファイルの場所が異なります。下表は OS 別の代表的なパスです——JSON を編集したら通常クライアントを完全に再起動してください。一部エディタは保存時に JSON を自動整形するため、PAT を env に書く場合は、整形後も引用符とカンマが正しいか確認してください。
| クライアント | Windows | macOS | Linux |
|---|---|---|---|
| Cursor(グローバル) | %USERPROFILE%\.cursor\mcp.json |
~/.cursor/mcp.json |
~/.cursor/mcp.json |
| Cursor(プロジェクト) | .cursor/mcp.json(プロジェクトルート、グローバルより優先) |
||
| Claude Desktop | %APPDATA%\Claude\claude_desktop_config.json |
~/Library/Application Support/Claude/claude_desktop_config.json |
~/.config/Claude/claude_desktop_config.json |
| VS Code Copilot | Settings → MCP、またはワークスペース .vscode/mcp.json(拡張機能のバージョンによる) |
||
チームで隔離された Mac 環境で MCP 連携テストを行い(個人ノート PC に PAT を置かない)、Macstripe クラウド Mac を専用テストノードとして借り、SSH で入って Docker やバイナリを設定し、ローカルの Cursor と stdio / リモートトンネルで接続する方法もあります。
方式 1:リモートホスト Server(全プラットフォーム共通)
GitHub の公式リモート MCP エンドポイント:https://api.githubcopilot.com/mcp/。Windows、Linux、macOS で設定が完全に同じで、ローカルプロセスや Docker は不要です。
認証は HTTP ヘッダーに Authorization: Bearer <YOUR_GITHUB_PAT> を付与します。リモート Server の JSON フィールド名はクライアントで若干異なりますが、Cursor と VS Code の一般的な書き方は次のとおりです。
Cursor / VS Code 設定例
~/.cursor/mcp.json(またはプロジェクトの .cursor/mcp.json)を編集:
{
"mcpServers": {
"github": {
"url": "https://api.githubcopilot.com/mcp/",
"headers": {
"Authorization": "Bearer ghp_xxxxxxxxxxxxxxxxxxxx"
}
}
}
}
保存後Cursor を完全に終了して再起動し、Settings → MCP パネルで github が緑の Connected になることを確認してください。初回接続で認可ダイアログが出たら、クライアントの案内に従ってください。
リモートホストの利点は、Server のバージョンアップとセキュリティパッチを GitHub が担い、PAT のライフサイクルだけ管理すればよい点です。企業内網で出口 HTTPS がプロキシに遮られる場合は、システムまたはクライアントで HTTPS_PROXY を設定し、api.githubcopilot.com に到達できるようにしてください。接続テストはターミナルで:
curl -s -o /dev/null -w "%{http_code}" \
-H "Authorization: Bearer ghp_xxxxxxxxxxxxxxxxxxxx" \
https://api.githubcopilot.com/mcp/
200 または 405(Method Not Allowed=エンドポイント到達可)が返れば、ネットワークと Token はおおむね正常です。401 の場合は PAT の期限切れまたは scope 不足を確認してください。
方式 2:Docker ローカルデプロイ
公式イメージ:ghcr.io/github/github-mcp-server。ローカル Docker は資格情報の分離、オフライン実行、カスタムネットワークポリシーが必要なチーム向けです。PAT と OAuth の 2 認証モードに対応しています。
各プラットフォームの Docker 前提
- Windows: Docker Desktop をインストールし、WSL2 バックエンドを有効化、
docker versionが動作することを確認。Docker Desktop → Settings → Resources で最低 2GB メモリを割り当て、コンテナ起動時の OOM を避けてください。 - macOS: Docker Desktop for Mac(Apple Silicon は ARM イメージを自動取得、追加設定不要)。Rosetta 経由の Intel 版 Docker を使う場合は、正しいアーキテクチャのレイヤーを引いているか確認してください。
- Linux: Docker Engine(
sudo apt install docker.ioなど)をインストールし、ユーザーをdockerグループに追加したら再ログイン。さもないと毎回sudo dockerが必要です。
3 プラットフォームで mcp.json の内容は同一——Docker 方式のもう一つの利点は、一度書けば Windows / macOS / Linux の開発者がそのまま使えることです。
PAT モード — mcp.json 設定
Docker では環境変数 GITHUB_PERSONAL_ACCESS_TOKEN で PAT を渡します:
{
"mcpServers": {
"github": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "GITHUB_PERSONAL_ACCESS_TOKEN",
"ghcr.io/github/github-mcp-server"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxxxxxxxxxxxxxxxxxx"
}
}
}
}
OAuth モード — コールバックポートのマッピング
OAuth フローを使う場合、コンテナ内のコールバックポートをホストの 127.0.0.1:8085 にマップし、GITHUB_OAUTH_CALLBACK_PORT=8085 を設定します:
{
"mcpServers": {
"github": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-p", "127.0.0.1:8085:8085",
"-e", "GITHUB_OAUTH_CALLBACK_PORT=8085",
"ghcr.io/github/github-mcp-server"
]
}
}
}
初回接続時にブラウザで GitHub 認可ページが開きます。認可後は Token を Server が管理するため、JSON に PAT を書く必要はありません。
Docker イメージの取得確認
docker pull ghcr.io/github/github-mcp-server
docker run --rm ghcr.io/github/github-mcp-server --version
チームが隔離されたリモート Mac 上で MCP Server を動かす場合(Macstripe クラウドノードなど)、Windows 開発者は SSH トンネルで stdio をローカル Cursor に転送できます——macOS 側の環境一貫性を保ちつつ、個人 PC に PAT を置かない構成です。MCP のセキュリティと本番運用の詳細は AGNTCon MCP 展開ガイド を参照してください。
方式 3:プリビルドバイナリ
Docker を入れたくない場合は、GitHub Releases から対応プラットフォームのビルド済みパッケージをダウンロード(v1.7.0 以降):
| プラットフォーム / アーキテクチャ | Release ファイル名 |
|---|---|
| macOS Apple Silicon | github-mcp-server_Darwin_arm64.tar.gz |
| macOS Intel | github-mcp-server_Darwin_x86_64.tar.gz |
| Linux x86_64 | github-mcp-server_Linux_x86_64.tar.gz |
| Linux ARM64 | github-mcp-server_Linux_arm64.tar.gz |
| Windows x86_64 | github-mcp-server_Windows_x86_64.zip |
macOS / Linux のインストールと PATH
# 以 macOS ARM 为例
tar -xzf github-mcp-server_Darwin_arm64.tar.gz
sudo mv github-mcp-server /usr/local/bin/
chmod +x /usr/local/bin/github-mcp-server
github-mcp-server --version
Windows のインストール
# PowerShell
Expand-Archive github-mcp-server_Windows_x86_64.zip -DestinationPath C:\Tools\github-mcp-server
# 将 C:\Tools\github-mcp-server 加入系统 PATH
mcp.json 設定(stdio モード)
{
"mcpServers": {
"github": {
"command": "github-mcp-server",
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxxxxxxxxxxxxxxxxxx"
}
}
}
}
Windows で PATH が効かない場合は絶対パスを指定:"command": "C:\\Tools\\github-mcp-server\\github-mcp-server.exe"。
バイナリ方式は起動が速く Docker デーモン不要ですが、バージョンアップは手動で Release をダウンロードして差し替える必要があります。チーム内で使用中のバージョン(例:v1.7.0)とチェックサムを文書化し、メンバー間で Server バージョンがずれてツール挙動が変わるのを防ぎましょう。
方式 4:ソースビルド(上級)
カスタムブランチ、PR 貢献、全ソースの監査が必要な場合は公式リポジトリからビルドします。Go 1.24+ が必要です。
git clone https://github.com/github/github-mcp-server.git
cd github-mcp-server
git checkout v1.7.0 # 或 main
go build -o github-mcp-server ./cmd/github-mcp-server
./github-mcp-server --version
ビルド成果物の使い方は方式 3 と同じで、mcp.json の command をビルドしたバイナリのパスに向けます。本番では main を直接追うより固定 tag(例:v1.7.0)を推奨します。
ソースビルドは、github/github-mcp-server に PR を出す貢献者と、全コードを監査して内部パッチを当ててからバイナリを配布する企業セキュリティチーム向けです。カスタム要件がなければ方式 1 か 2 で十分で、Go ツールチェーンを入れる必要はありません。
主要 MCP ホストへの接続:Cursor、Claude Desktop、VS Code Copilot
3 クライアントとも JSON 構造はやや異なりますが、核心は mcpServers エントリを 1 つ宣言することです。以下は Docker PAT モードの典型例(リモートホストは command/args を url + headers に置き換え)。
Cursor
グローバルは ~/.cursor/mcp.json、プロジェクトは .cursor/mcp.json。プロジェクト設定は「このリポジトリだけ GitHub MCP が必要」な場面向き——OSS 貢献と個人 side project で PAT を分けるなど。再起動後、チャットで「自分の GitHub リポジトリを一覧して」と入力しツールが使えるか確認。Agent が「GitHub ツールがない」と返す場合は MCP が読み込まれていません。MCP パネルのログを確認してください。
Claude Desktop
各 OS の claude_desktop_config.json を編集。構造は Cursor と同じで、トップレベルキーも mcpServers です:
{
"mcpServers": {
"github": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "GITHUB_PERSONAL_ACCESS_TOKEN",
"ghcr.io/github/github-mcp-server"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxxxxxxxxxxxxxxxxxx"
}
}
}
}
保存後、Claude Desktop を終了して再起動。macOS ではメニューバーアイコン → Settings → Developer で MCP 接続ログを確認できます。
VS Code Copilot(Agent モード)
VS Code 1.99+ では Copilot Chat が MCP に対応。Command Palette → MCP: Add Server、またはワークスペースに .vscode/mcp.json を作成。リモートホストの書き方は Cursor と同一です。
Cursor と Claude Code のどちらを使うか迷ったら、AI コーディングツール選びガイド を参照してから MCP ホストを決めてください。
7 ステップ受け入れチェックとトラブルシュート
設定後、以下を順に確認し、Agent が実際に GitHub ツールを呼べることを確かめてください。
- Step 1: PAT を作成し、scope に
repo(および必要なread:orgなど)が含まれる - Step 2:
mcp.jsonの JSON 構文が正しい(jq .やオンライン検証ツールで確認) - Step 3: クライアントを完全再起動した(ウィンドウを閉じただけではない)
- Step 4: MCP パネルで
githubが Connected / 緑色 - Step 5: チャットで「自分の GitHub リポジトリを一覧して」が実在のリポジトリ名を返す
- Step 6: プライベートリポジトリのファイルを読み取り、PAT 権限が足りることを確認
- Step 7: クライアントログに
401 Unauthorizedやconnection refusedがない
よくあるトラブル表
| 現象 | 想定原因 | 対処 |
|---|---|---|
| MCP パネルが赤 / Disconnected | JSON 構文エラー、パス誤り | JSON を検証;グローバルかプロジェクト設定か確認 |
401 Unauthorized |
PAT 期限切れまたは scope 不足 | PAT を再生成し、repo などの scope を追加 |
Docker Cannot connect to daemon |
Docker Desktop 未起動 | Windows/macOS で Docker Desktop を起動;Linux は sudo systemctl start docker |
| OAuth コールバック失敗 | ポート 8085 が使用中または未マップ | -p 127.0.0.1:8085:8085 と GITHUB_OAUTH_CALLBACK_PORT=8085 を確認 |
| ツール一覧が空 | 非推奨 npm パッケージを使用 | github/github-mcp-server v1.7.0 へ移行 |
| Windows でコマンドが見つからない | バイナリが PATH にない | mcp.json に .exe への絶対パスを記述 |
旧来の認識:「npm パッケージを入れれば GitHub に繋がる。」
2025 年 4 月以降の公式ルートは github/github-mcp-server;リモートホストはapi.githubcopilot.com/mcp/、server-github を探さない。
よくある質問
リモートホストと Docker ローカル、どちらを選ぶ?
個人の試用やチームの迅速な検証なら GitHub リモートホスト(https://api.githubcopilot.com/mcp/)を優先。全プラットフォームで設定が同じで、プロセス管理も不要です。オフライン実行、カスタムツールセット、厳格な資格情報分離が必要なら Docker ローカル(ghcr.io/github/github-mcp-server)を選びます。
npm の @modelcontextprotocol/server-github はまだ使える?
いいえ。2025 年 4 月に非推奨です。GitHub 公式 github/github-mcp-server(最新 v1.7.0)を使ってください。
PAT に必要な scope は?
Fine-grained または Classic PAT で最低 repo(リポジトリ読み書き)と read:org(組織情報読み取り)。Issues、Pull Requests、Projects を操作する場合は、実際のツール呼び出しに応じて scope を追加してください。
Windows で Docker イメージの pull に失敗する
Docker Desktop が起動し WSL2 バックエンドが正常か確認。Settings → Resources で十分なメモリを割り当て。docker login ghcr.io の後 docker pull ghcr.io/github/github-mcp-server を再試行。
Cursor で mcp.json を変更しても反映されない
JSON 保存後に Cursor を完全終了して再起動。~/.cursor/mcp.json とプロジェクト .cursor/mcp.json の競合を確認(プロジェクト優先)。Settings → MCP パネルで接続状態とエラーログを確認。
まとめ
GitHub MCP Server の公式デプロイルートは明確です:
- 最速で始める — リモートホスト
https://api.githubcopilot.com/mcp/+ PAT、全プラットフォーム同一 JSON - ローカルで制御 — Docker イメージ
ghcr.io/github/github-mcp-server、PAT または OAuth - Docker なし — Releases からプリビルドバイナリ、PATH を通すだけ
- 上級カスタム — Go 1.24+ でソースビルド、固定 tag で本番
まずリモートホストで Cursor 上の「リポジトリ一覧 → ファイル読み取り → Issue 検索」の 3 ステップを通し、PAT 権限を確認してから、Docker やリモート Mac 隔離環境への移行を検討してください。
チーム運用では、MCP 設定ファイル(PAT 平文を除く)をバージョン管理に入れ、環境変数やシークレット管理で Token を注入するのが望ましい——MCP セキュアデプロイのベストプラクティスと一致します。Windows 開発者が iOS ビルドと Agent ワークフローを同時に回す場合、Macstripe クラウド Mac を日単位で借り、約 5 分で SSH 開通、MCP Server・Xcode・Fastlane を同一 macOS に置き、ノート PC はリモート端末だけにする——個人 PC で Docker + Xcode リモートプラグインを混在させるより安定します。