Claude Code GitHub MCP完全ガイド|GitHubリポジトリをAIエージェントで操作

Claude CodeでGitHub MCPサーバーを設定し、GitHubリポジトリの操作をAIエージェントに任せる方法を解説。Issue管理、PR作成、コード検索など実践的な活用例を紹介。

24 min read

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のインストール

前提条件

  1. Claude Codeがインストールされていること
  2. GitHubアカウントとPersonal Access Token(PAT)を持っていること

Personal Access Tokenの作成

  1. GitHub Settings > Developer settings > Personal access tokensにアクセス
  2. 「Generate new token (classic)」をクリック
  3. 必要なスコープを選択:
    1. repo - リポジトリへのフルアクセス
    2. read:org - 組織情報の読み取り(オプション)
    3. gist - Gistへのアクセス(オプション)
  4. トークンを生成してコピー

MCPサーバーの設定

Claude Codeの設定ファイルにGitHub MCPサーバーを追加します。

グローバル設定(~/.claude/settings.json):

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

注意: 実際のトークンを直接記載する代わりに、環境変数を参照することも可能です。

環境変数を使用する方法(推奨)

  1. シェルの設定ファイル(.bashrc, .zshrcなど)にトークンを追加:
export GITHUB_PERSONAL_ACCESS_TOKEN="ghp_xxxxxxxxxxxx"
  1. 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'

解決策:

  1. npxが正しくインストールされているか確認
  2. Node.jsのバージョンを確認(18以上が必要)
  3. トークンが正しく設定されているか確認

認証エラー

症状:

Error: Bad credentials

解決策:

  1. Personal Access Tokenの有効期限を確認
  2. 必要なスコープが付与されているか確認
  3. トークンを再生成

レート制限エラー

症状:

Error: API rate limit exceeded

解決策:

  • 認証済みのリクエストは1時間あたり5000回まで可能
  • 短時間に大量のリクエストを送らないよう注意

セキュリティのベストプラクティス

  1. 最小権限の原則: 必要最小限のスコープのみを付与
  2. トークンの管理: 環境変数を使用し、設定ファイルに直接記載しない
  3. 有効期限の設定: トークンに有効期限を設定し、定期的に更新
  4. アクセスログの確認: GitHubのセキュリティログを定期的に確認

まとめ

GitHub MCPを使うことで:

  • 自然言語でGitHub操作が可能
  • Issue管理やPR作成が効率化
  • 複雑な操作もAIが代行

設定は一度行えば、あとは自然言語で指示するだけ。GitHub作業の効率が大幅に向上します。

参考リンク

Related Articles