はじめに
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 にアクセス
- GitHub にログイン
- 右上のプロフィールアイコン → Settings
1-2. トークンを作成
- 
左メニュー最下部の Developer settings 
- 
Personal access tokens → Tokens (classic) 
- 
Generate new token → Generate new token (classic) を選択 
1-3. 必要な権限を設定
今回は個人利用・学習目的のためスコープ設定は適当
業務やチームで使う際は慎重に設定してください
1-4. トークンを保存
- Generate token をクリック
- 表示されたトークン(ghp_で始まる文字列)を必ずコピー
この画面を離れると二度と表示されません
安全な場所に保存してください
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 を作成してくれたようです。
おわりに
Claude Code に GitHub MCP サーバーを設定してみて、開発中にブラウザを開かずに Issue や PR の管理ができるようになりました。
まだ触り始めたばかりですが、MCP という仕組みの可能性を感じています。
GitHub 以外にも、データベース(PostgreSQL、MongoDB)、Slack、Google Drive、ファイルシステムなど、様々な MCP サーバーが公開されています。これらを組み合わせれば、もっと面白い使い方ができそうです。
色々試して、また記事にまとめたいと思います。






