2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Claude Code に GitHub MCP サーバーを設定してみた

Last updated at Posted at 2025-10-04

はじめに

Claude Code Pro プランを契約して Claude Code を使い始めました。
正直なところ、まだまだ使いこなせているとは言えず、Cursor などの AI エディタと同じような使い方しかできていません。

そんな中、最近話題の MCP(Model Context Protocol) という仕組みを知りました。
MCP を使えば、Claude Code に外部ツールやデータソースを接続できるとのこと。

特に気になったのが GitHub MCP サーバーです。
AI に GitHub の情報を読み込ませることができれば、以下のようなことが楽になるのではと考えました:

  • Issue や PR の内容を、ブラウザを開かずに確認
  • Issue や PR の作成を Claude に依頼
  • コミット履歴やリポジトリ情報を自然言語で取得

今回は、Claude Code に GitHub MCP サーバーを設定して、実際に GitHub の情報取得から Issue・PR の作成まで行えるようにしてみました。

思ったより簡単に設定できたので、手順をまとめておきます。

前提条件

  • Claude Code がインストール済み
  • Claude Pro 以上のアカウントを契約
  • Node.js がインストール済み(node -v で確認)

1. GitHub Personal Access Token の作成

まず、Claude Code が GitHub にアクセスするためのトークンを作成します。

1-1. GitHub にアクセス

  1. GitHub にログイン
  2. 右上のプロフィールアイコン → Settings

スクリーンショット 2025-10-04 17.34.37.png

1-2. トークンを作成

  1. 左メニュー最下部の Developer settings

    スクリーンショット 2025-10-04 17.36.48.png

  2. Personal access tokensTokens (classic)

    スクリーンショット 2025-10-04 17.37.52.png

  3. Generate new tokenGenerate new token (classic) を選択

    スクリーンショット 2025-10-04 17.40.04.png

1-3. 必要な権限を設定

  • Note: Claude Code MCP など、用途がわかる名前

  • Expiration: 有効期限を選択

  • Select scopes: repo (リポジトリへのフルアクセス)

    スクリーンショット 2025-10-04 17.48.37.png

今回は個人利用・学習目的のためスコープ設定は適当
業務やチームで使う際は慎重に設定してください

1-4. トークンを保存

  1. Generate token をクリック
  2. 表示されたトークン(ghp_ で始まる文字列)を必ずコピー

スクリーンショット 2025-10-04 17.50.06.png

この画面を離れると二度と表示されません
安全な場所に保存してください

2. 環境変数の設定

セキュリティのため、トークンは環境変数で管理します。

macOS / Linux の場合

# ~/.zshrc に追加
echo 'export GITHUB_PERSONAL_ACCESS_TOKEN="ghp_your_token_here"' >> ~/.zshrc

# 設定を反映
source ~/.zshrc

# 確認
echo $GITHUB_PERSONAL_ACCESS_TOKEN

ghp_your_token_here の部分を、実際の GitHub トークンに置き換えてください

Windows の場合

PowerShell:

# 永続的に設定
[System.Environment]::SetEnvironmentVariable('GITHUB_PERSONAL_ACCESS_TOKEN', 'ghp_your_token_here', 'User')

# 確認
echo $env:GITHUB_PERSONAL_ACCESS_TOKEN

3. プロジェクトルートに .mcp.json を作成

3-1. プロジェクトルートに設定ファイルを追加

project-root/.mcp.json

{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "${GITHUB_PERSONAL_ACCESS_TOKEN}",
        "GITHUB_OWNER": "user-name",
        "GITHUB_REPO": "repo-name"
      }
    }
  }
}

4. Claude Code で動作確認

4-1. Claude Code を起動

# プロジェクトディレクトリにいることを確認
cd project-root/

# Claude Code を起動
claude

4-2. MCP サーバーが認識されているか確認

Claude Code 内で:

/mcp list

期待される出力:

Connected MCP Servers:
- github

4-3. 実際に GitHub 情報を取得してみる

設定が完了したら、実際に GitHub 情報を取得できるかテストしてみましょう。

テスト例:

> 最新のPull Requestを確認して

成功例:

⏺ github - list_pull_requests (MCP)(owner: "ymtdir", repo: "ragchat-app", state: "all", sort: "updated", direction: "desc", per_page: 1)

⏺ 最新の Pull Request は #46: グループ一覧ページにメンバー管理機能を追加 です。

  状態: Merged (2025-09-20)

  内容:
  - グループテーブルにメンバー数表示機能を追加
  - グループアクションメニューに「メンバー管理」オプションを追加
  - グループメンバー管理モーダルコンポーネントを実装
  - メンバーの一覧表示・追加・削除機能を実装

  このPRは既にmainブランチにマージ済みです。

このような結果が表示されれば、設定は成功です!

他にも以下のような質問ができます:

  • 「このリポジトリの未解決 Issue を教えて」
  • 「最新のコミット履歴を見せて」
  • 「README.md の内容を教えて」

5. 実際に使ってみた

Issue の確認

未解決のIssueを教えて

このように聞くと、Claude が自動的に Issue の一覧を取得して、状況を整理してくれます。

Issue の作成

Issueを作成してみて

このように依頼すると、適切なフォーマットで Issue を作成してくれます。

実行例:

本来は実装したい内容を具体的に記述するべきですが、今回はテスト用に適当なIssueを作成してもらいます。

> Issueを作成してみて 

⏺ Bash(gh issue create --title "バックエンドのテストカバレッジ向上" --body "## 目的
      バックエンドのテストカバレッジを80%以上に向上させる…)
  ⎿  https://github.com/ymtdir/ragchat-app/issues/49

⏺ issueを作成しました: https://github.com/ymtdir/ragchat-app/issues/49

URLを確認すると、実際に Issue が作成されていました。
具体的な指示は出さなかったものの、Claude が自動的に現在のプロジェクトの状況を判断して適切な Issue を作成してくれたようです。

スクリーンショット 2025-10-04 19.11.29.png

おわりに

Claude Code に GitHub MCP サーバーを設定してみて、開発中にブラウザを開かずに Issue や PR の管理ができるようになりました。

まだ触り始めたばかりですが、MCP という仕組みの可能性を感じています。

GitHub 以外にも、データベース(PostgreSQL、MongoDB)、Slack、Google Drive、ファイルシステムなど、様々な MCP サーバーが公開されています。これらを組み合わせれば、もっと面白い使い方ができそうです。

色々試して、また記事にまとめたいと思います。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?