GitHubのMCPサーバを使ってみる

はじめに

前回「GitLabのMCPサーバを使ってみる」では、GitLabのMCPサーバを試してみたが、今回はGitHubのMCPサーバを試してみる。

環境

Windows 11 Professional
WSL2 Ubuntu 24.04 LTS
GitHub Copilot Pro
VS Code

GitHub MCP

公式で出ているとのことで早速使ってみる。

準備

  • Docker インストール済
  • VSCode インストール済

Personal Access Tokenの作成

GitHubのMCPサーバを使うには、Personal Access Token (PAT) が必要となる。
以下の手順で作成する。

  1. GitHubにログインし、右上のプロフィールアイコン→「Settings」をクリックする
  2. 左側のメニューから「Developer settings」をクリックする
  3. 「Personal access tokens」→「Fine-grained tokens」を選択する
  4. 「Generate new token」をクリックする
  5. トークン名、有効期限を設定し、必要なスコープ(少なくとも「repo」)を選択する
  6. 「Generate token」をクリックしてトークンを生成する
  7. 表示されたトークンをコピーして安全に保存する。

VSCode MCPサーバを追加する

  1. 下記のリンクページにある、画像のリンクを押下する。
setting-github-mcp-server-01
  1. 「サーバのインストール」を選択する。 setting-github-mcp-server-02

  2. 以下のjsonsettings.jsonに追記される。

            "github": {
                "command": "docker",
                "args": [
                    "run",
                    "-i",
                    "--rm",
                    "-e",
                    "GITHUB_PERSONAL_ACCESS_TOKEN",
                    "ghcr.io/github/github-mcp-server"
                ],
                "env": {
                    "GITHUB_PERSONAL_ACCESS_TOKEN": "<github_token>"
                }
            }
  1. <github_token> の部分を先ほど取得したPATに変更する。

これで設定は完了した。

VS Code + MCPサーバでGitHubを操作する

MCPサーバを起動する

  1. Ctrl + Shift + Pでコマンドパレットを開く。
  2. 「MCP: List Servers」を入力し、MCPサーバの一覧を開く。
  3. 追加した githubを選択する。
    setting-github-mcp-server-03
  4. 「サーバの起動」を選択する。
    setting-github-mcp-server-04

起動が完了したら、実際にGitHubの情報を取得したりしてみる。

GitHubの情報を取得する

  1. VS Codeで新しいチャットを開く。
  2. 「エージェント」モードを選択する。 選択後、レンチマークに数字がつくので、これをクリックするとコンテキストとして追加されているMCPのツールが確認できる。
    ask-mcp-01 ask-mcp-02
privateリポジトリ一覧を見せて
ask-mcp-03

GitHubでイシューを作成する

次に、特定のリポジトリにイシューを作成してみる

blog-hugoリポジトリに新しいイシューを作成してください。タイトルは「テストイシュー」、内容は「MCPサーバからのテスト投稿です」としてください。
ask-mcp-04

MCPサーバがGitHubのAPIを使用してイシューを作成してくれる。

ask-mcp-05

GitHubでPull Requestの情報を取得する

特定のリポジトリのPull Request一覧を取得することもできる:

portfolio-vue3 リポジトリのプルリクエスト一覧を表示してください。
ask-mcp-06

おぉ~!
全部ちゃんと取れてるね…!

参考

おわりに

VS Code + GitHub MCPサーバを使ってみた。
GitLabのMCPサーバよりも連携が簡単だった。(GitLabの方はネットワーク周りで大変だったからあまり関係ないかもだけど。)
MCPサーバ便利なので、もっと活用していきたい。
応用することで、AIを活用したGitHub操作の効率化が可能になりそうだなぁ。

Hugo で構築されています。
テーマ StackJimmy によって設計されています。