GitHub MCPでClaude Codeがもっと便利に!ターミナルから直接GitHub操作する方法
GitHubのPR書くの面倒ですよね?
毎回GitHubのwebページ開いて、ファイル確認して、PRの説明書いて...といった作業が煩雑に感じることはありませんか?
そんな時にGitHub MCPをClaude Codeで使うと、ターミナルから直接GitHubのリポジトリをいじれるようになります。「このリポジトリのREADME見て」という指示で内容確認ができ、「PRを作って」と指示すれば自動的にプルリクエストを作成してくれます。
CLI派の方にはとても便利な機能です。今回はその設定方法について詳しく解説します。
GitHub MCPについて
GitHub MCPは、Model Context Protocol(MCP)を使ってGitHubのAPIにアクセスできるサーバーです。
- GitHub公式MCPサーバー: https://github.com/github/github-mcp-server
MCPを使うことで、AIアシスタントが外部サービスと連携できるようになります。
必要なもの
- Node.js 18以上
- Docker(GitHub公式MCPサーバー用)
- GitHubアカウント
- Claude Code または Claude Desktop
- Claude API利用料金(Claude Codeは課金サービスです。詳細はClaude Code料金ページを参照。Claude Desktopは一定の無料利用枠がありますが、大量に使う場合は課金が必要になります。詳細はClaude料金ページを参照)
- 学習意欲
1. GitHubのトークン作る
まずはGitHubでPersonal Access Tokenを作成します。
- GitHub右上のアイコン → Settings
- Developer settings → Personal access tokens → Tokens (classic)
- Generate new token (classic)
- 権限は以下をチェック:
-
repo
(必須) -
user:email
(あると便利)
-
最小権限でいくなら repo
だけでOK。あとで必要になったら追加すればいいです。
トークンが表示されたらコピーして保存。一回しか見れないので注意。
2. 事前チェック
Node.js入ってる?
node --version
18以上じゃないとダメです。入ってなかったら nodejs.org からダウンロード。
GitHub MCPサーバーの動作確認
GitHub公式MCPサーバーはDockerで提供されています:
docker run --rm ghcr.io/github/github-mcp-server --help
Dockerがない場合は以下でインストール:
Dockerが起動してない場合:
# Docker を起動
sudo systemctl start docker
トークン動いてる?
curl -H "Authorization: token ここにさっきのトークンを入れる" https://api.github.com
GitHub API にアクセスできればOK。
3-A. Claude Code で設定する場合
Claude Code使いたい人はこちらの方法です。ターミナル好きの方には特におすすめです。
Claude Code のインストール
npm install -g @anthropic-ai/claude-code
Claude Codeの最新インストール方法は公式ドキュメントでも確認できます:
設定ファイル作る
場所:
~/.claude.json
設定内容(GitHub公式MCPサーバー):
{
"mcpServers": {
"github": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GITHUB_PERSONAL_ACCESS_TOKEN",
"ghcr.io/github/github-mcp-server"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ここにさっきのトークンを入れる"
}
}
}
}
トークンの部分は自分のに書き換えてくださいね。
試してみる
Claude Code 起動:
claude
MCP の状態確認:
/mcp
または、以下のコマンドでも確認できます:
claude mcp list
正常に設定されていると、こんな感じで表示されます:
┌─────────────────────────────────────────────────────────────────┐
│ Manage MCP servers │
│ │
│ ❯ 1. github ✔ connected · Enter to view details │
└─────────────────────────────────────────────────────────────────┘
実際に GitHub 触ってみる:
https://github.com/username/repository のREADMEを確認して
うまくいくとリポジトリの内容が表示されます。
3-B. Claude Desktop で設定する場合
GUI派の人はこっちが楽です。
設定ファイルの場所
Claude Desktop のメニューから Settings → Developer → Edit Config で設定ファイルの場所を確認できます。そこから claude_desktop_config.json
ファイルを編集する必要があります。
手動でアクセスする場合:
# macOS
~/Library/Application\ Support/Claude/claude_desktop_config.json
Mac注意: Application Support
にスペースが入ってるので、ターミナルからアクセスする場合は \
でエスケープするか、クオートで囲んでください。
設定内容(GitHub公式MCPサーバー)
{
"mcpServers": {
"github": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GITHUB_PERSONAL_ACCESS_TOKEN",
"ghcr.io/github/github-mcp-server"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ここにさっきのトークンを入れる"
}
}
}
}
設定したらClaude Desktopを再起動。これで使えるようになります。
実際に使ってみる
僕が試した例だと:
このリポジトリの構造を教えて
src フォルダの中身を詳しく見て
READMEを改善するPRを作成して
最新5件のコミット履歴を確認して
issue #123 の内容を教えて
みたいな感じで自然に指示できます。
ターミナルから抜けずにGitHub操作できるのが最高です。
つまづきポイント
「MCPサーバーに接続できません」エラー
大体以下のどれか:
1. トークンが間違ってる
# トークンの確認
curl -H "Authorization: token your_token" https://api.github.com
2. JSONの書き方が間違ってる
# JSONチェック
cat ~/.claude.json | python3 -m json.tool
3. Node.jsが古い
node --version
# 18以上じゃないとダメ
4. GitHub MCPサーバーが見つからない
# Dockerでサーバーの手動実行テスト
docker run --rm ghcr.io/github/github-mcp-server --help
5. Dockerが起動してない
# Docker の状態確認
docker ps
# エラーが出る場合は Docker を起動
sudo systemctl start docker
権限エラー
curl -I -H "Authorization: token your_token" https://api.github.com
# X-OAuth-Scopes ヘッダーで権限確認
repo
権限がちゃんと付いてるか確認してください。
APIレート制限
GitHub APIには制限があります:
- 認証あり:5,000リクエスト/時間
- 認証なし:60リクエスト/時間
引っかかったら時間置いて再試行。
注意点
- トークンをGitにコミットしない(当たり前だけど)
- 定期的にトークン更新する(3-6ヶ月ごと)
- 権限は必要最小限で
- 使わなくなったトークンは削除する
- 設定ファイルのバックアップ取る(特にClaude Desktop、たまに消える)
どっち選べばいい?
Claude Code がおすすめな人
- ターミナル大好き
- 複数プロジェクト行き来する
- 自動化したい
Claude Desktop がおすすめな人
- GUI の方が楽
- 設定簡単にしたい
- 見た目重視
個人的にはClaude Codeの方がターミナルワークフローに馴染むので好きですが、好みの問題ですね。
追記:旧バージョンのMCPサーバーについて
注意: 以下の方法は GitHub によって非推奨とされており、開発が停止されています。新しいプロジェクトでは上記の GitHub公式MCPサーバーを使用してください。
ただし、この旧バージョンはDockerを立ち上げなくて楽なため、お試しで使ってみたい場合には便利です。
旧バージョン(非推奨)の設定方法
旧 Model Context Protocol リポジトリのGitHubサーバーを使用する場合:
動作確認:
npx @modelcontextprotocol/server-github --help
設定内容:
{
"mcpServers": {
"github": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-github"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ここにさっきのトークンを入れる"
}
}
}
}
この方法は将来的にサポートされなくなる可能性があるため、新規プロジェクトでは GitHub公式MCPサーバーの使用を強く推奨します。
最後に
設定は環境により異なりますが、15分程度で完了できます。一度設定すればGitHub作業の効率が大幅に向上します。
特にターミナル中心で作業している方には大変おすすめです。コードレビューや複数リポジトリ間の作業効率が大幅に向上します。
「あのファイルの内容確認したいけど、ブラウザ開くの面倒だな...」みたいなストレスから解放されます。
Claude CodeメインでもClaude Desktopでも、どっちでも好きな方で試してみてください。
参考リンク
注意: 技術仕様は変更される可能性があります。設定前に必ず最新の公式ドキュメントを確認してください。
Discussion
kazさんのプロフィール、Xへのリンクがリンク切れになっておりました!
ありがとうございます!
リンクつけなおしました~