コンテンツにスキップ

GitHub MCP Server 設定ガイド

概要

GitHub MCP サーバーを使用すると、AntiGravity IDE から直接 GitHub リポジトリの操作が可能になります。

利用可能な機能

  • リポジトリ操作
  • ファイルの作成・読み取り・更新・削除
  • ブランチの作成・切り替え
  • コミットの作成
  • プルリクエストの作成・マージ

  • Issue管理

  • Issueの作成・更新・クローズ
  • コメントの追加
  • ラベルの管理

  • 検索機能

  • コード検索
  • Issue/PR検索
  • リポジトリ検索

設定手順

1. GitHub Personal Access Token の取得

  1. GitHubにログインして、Settings > Developer settings > Personal access tokens > Tokens (classic) にアクセス

  2. "Generate new token (classic)" をクリック

  3. トークンの設定

  4. Note: AntiGravity MCP Server など、わかりやすい名前を入力
  5. Expiration: 有効期限を設定(推奨: 90日または無期限)
  6. Scopes: 以下の権限を選択

    • repo (Full control of private repositories)
    • repo:status
    • repo_deployment
    • public_repo
    • repo:invite
    • security_events
    • workflow (Update GitHub Action workflows)
    • write:discussion (Read and write team discussions)
    • read:org (Read org and team membership, read org projects)
  7. "Generate token" をクリックし、表示されたトークンをコピー

    ⚠️ 重要: トークンは一度しか表示されません。必ず安全な場所に保存してください。

2. MCP設定ファイルへの追加

方法A: 直接トークンを記述(開発環境向け)

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

方法B: 環境変数ファイルを使用(推奨)

1. .env ファイルを作成

プロジェクトルートまたは Credentials/ ディレクトリに .env ファイルを作成:

GITHUB_PERSONAL_ACCESS_TOKEN=ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

2. MCP設定ファイル

{
  "mcpServers": {
    "github": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "envFile": "D:\\Kazuma_Teramachi\\MyLab\\Credentials\\.env"
    }
  }
}

方法C: システム環境変数を使用

1. Windowsの環境変数を設定

setx GITHUB_PERSONAL_ACCESS_TOKEN "ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

2. MCP設定ファイル

{
  "mcpServers": {
    "github": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"]
    }
  }
}

3. 特定のリポジトリに限定する場合

特定のリポジトリのみにアクセスを制限したい場合:

{
  "mcpServers": {
    "github-mylab": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-github",
        "--owner", "Kazuma_Teramachi",
        "--repo", "MyLab"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
      }
    }
  }
}

完全な設定例

複数のMCPサーバーと組み合わせた実用的な設定例:

{
  "mcpServers": {
    "filesystem": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "D:\\Kazuma_Teramachi\\MyLab"]
    },
    "github": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "envFile": "D:\\Kazuma_Teramachi\\MyLab\\Credentials\\.env"
    },
    "github-mylab": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-github",
        "--owner", "YourGitHubUsername",
        "--repo", "MyLab"
      ],
      "envFile": "D:\\Kazuma_Teramachi\\MyLab\\Credentials\\.env"
    }
  }
}

使用例

設定完了後、AntiGravity IDE のエージェントに以下のような指示が可能になります:

  • "GitHubのMyLabリポジトリにあるREADME.mdを読んで"
  • "新しいブランチ feature/mcp-integration を作成して"
  • "Issue #123 にコメントを追加して"
  • "最新のプルリクエスト一覧を表示して"
  • "このコードをコミットしてプッシュして"

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

[!CAUTION] Personal Access Token は非常に強力な権限を持ちます。以下の点に注意してください:

  1. トークンをGitにコミットしない
  2. .env ファイルは必ず .gitignore に追加
  3. 設定ファイルにトークンを直接記述しない

  4. 最小権限の原則

  5. 必要な権限のみを付与
  6. 読み取り専用の操作のみなら public_repo のみでOK

  7. 定期的なローテーション

  8. トークンは定期的に再生成
  9. 使用しなくなったトークンは削除

  10. トークンの保管

  11. Credentials/ ディレクトリに保管
  12. パスワードマネージャーでバックアップ

トラブルシューティング

エラー: "Authentication failed"

  • トークンが正しいか確認
  • トークンの有効期限を確認
  • 必要な権限(scopes)が付与されているか確認

エラー: "Command not found: npx"

  • Node.jsがインストールされているか確認
  • コマンドプロンプトを再起動

サーバーが表示されない

  1. AntiGravity IDE を再起動
  2. mcp.json の構文エラーを確認
  3. コマンドパレット → MCP: Refresh Servers

参考リンク