Claude Code GitHub MCP完全ガイド
Claude CodeでGitHub MCPサーバーを活用すれば、GitHubリポジトリの操作をAIエージェントに任せることができます。Issue管理、PR作成、ブランチ操作など、日常的なGitHub作業を効率化しましょう。
この記事では、GitHub MCPサーバーの設定方法から実践的な活用例まで詳しく解説します。
GitHub MCPとは
GitHub MCPは、Claude CodeからGitHub APIを直接操作するためのModel Context Protocol(MCP)サーバーです。
主な機能
- リポジトリ操作: ファイルの読み書き、ブランチ作成・マージ
- Issue管理: Issueの作成、更新、検索、コメント追加
- PR操作: Pull Requestの作成、レビュー、マージ
- 検索機能: コード検索、Issue検索、リポジトリ検索
- ユーザー情報: プロフィール情報の取得
GitHub MCPのインストール
前提条件
- Claude Codeがインストールされていること
- GitHubアカウントとPersonal Access Token(PAT)を持っていること
Personal Access Tokenの作成
- GitHub Settings > Developer settings > Personal access tokensにアクセス
- 「Generate new token (classic)」をクリック
- 必要なスコープを選択:
repo- リポジトリへのフルアクセスread:org- 組織情報の読み取り(オプション)gist- Gistへのアクセス(オプション)
- トークンを生成してコピー
MCPサーバーの設定
Claude Codeの設定ファイルにGitHub MCPサーバーを追加します。
グローバル設定(~/.claude/settings.json):
{
"mcpServers": {
"github": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-github"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxxxxxxxxxx"
}
}
}
}
注意: 実際のトークンを直接記載する代わりに、環境変数を参照することも可能です。
環境変数を使用する方法(推奨)
- シェルの設定ファイル(.bashrc, .zshrcなど)にトークンを追加:
export GITHUB_PERSONAL_ACCESS_TOKEN="ghp_xxxxxxxxxxxx"
- settings.jsonでは環境変数を参照:
{
"mcpServers": {
"github": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-github"
]
}
}
}
GitHub MCPの活用例
例1: リポジトリの内容を確認
> github/myrepoリポジトリのREADME.mdの内容を表示して
例2: Issueの作成
> 新しいIssueを作成して
タイトル: バグ修正 - ログイン機能のエラー
本文: ログイン時に500エラーが発生する問題を修正する必要があります
ラベル: bug, priority-high
例3: PRの作成
> feature/new-loginブランチからmainブランチへのPRを作成して
タイトル: 新しいログイン機能の実装
説明: OAuth認証を使用した新しいログイン機能を追加しました
例4: Issue一覧の取得
> このリポジトリのオープンなIssueを一覧表示して
例5: コード検索
> このリポジトリ内で「authentication」を含むファイルを検索して
gh CLIとの違い
GitHub MCPとgh CLI(GitHub CLI)は似た機能を提供しますが、用途が異なります。
機能 | GitHub MCP | gh CLI |
|---|---|---|
操作方法 | 自然言語でAIに指示 | コマンドラインで直接実行 |
複雑な操作 | AIが複数のAPIを組み合わせて対応 | スクリプトを書く必要がある |
学習コスト | 低い(自然言語で操作可能) | 中程度(コマンドを覚える必要) |
自動化 | AIが判断して実行 | 明示的なスクリプト作成 |
使い分けのポイント:
- GitHub MCP: 複雑な操作や、複数の作業を組み合わせる場合
- gh CLI: シンプルで定型的な操作を素早く実行する場合
トラブルシューティング
MCPサーバーが起動しない
症状:
Error: Failed to start MCP server 'github'
解決策:
- npxが正しくインストールされているか確認
- Node.jsのバージョンを確認(18以上が必要)
- トークンが正しく設定されているか確認
認証エラー
症状:
Error: Bad credentials
解決策:
- Personal Access Tokenの有効期限を確認
- 必要なスコープが付与されているか確認
- トークンを再生成
レート制限エラー
症状:
Error: API rate limit exceeded
解決策:
- 認証済みのリクエストは1時間あたり5000回まで可能
- 短時間に大量のリクエストを送らないよう注意
セキュリティのベストプラクティス
- 最小権限の原則: 必要最小限のスコープのみを付与
- トークンの管理: 環境変数を使用し、設定ファイルに直接記載しない
- 有効期限の設定: トークンに有効期限を設定し、定期的に更新
- アクセスログの確認: GitHubのセキュリティログを定期的に確認
まとめ
GitHub MCPを使うことで:
- 自然言語でGitHub操作が可能
- Issue管理やPR作成が効率化
- 複雑な操作もAIが代行
設定は一度行えば、あとは自然言語で指示するだけ。GitHub作業の効率が大幅に向上します。