mcpField
G
GitHub MCP Custom (Cross-Platform NPX Wrapper)

GitHub MCP Custom (Cross-Platform NPX Wrapper)

ローカル
github.com/idletoasterバージョン管理373 週間前に更新

GitHub MCP Custom (Cross-Platform NPX Wrapper) について

GitHub MCP CustomはGitHub MCP ServerをNPXコマンドとして提供し、Claude DesktopなどのMCP対応ツールを使う開発者向けです。Node.jsランチャーがビルド済みGoバイナリを実行するため、DockerやGoのインストールなしでWindows、Linux、macOSに対応します。

主な機能

  1. 01NPXまたはnpmのグローバルインストールで実行
  2. 02Node.jsランチャーでビルド済みGoバイナリを起動
  3. 03Windows、Linux、macOSに対応
  4. 04リポジトリ、Issue、プルリクエスト用ツール
  5. 05アラート、通知、ユーザーデータへのアクセス

活用シーン

  1. 01Claude DesktopをGitHubツールに接続
  2. 02リポジトリのファイルやブランチを管理
  3. 03Issueとプルリクエストを扱う
  4. 04GitHubのアラートや通知を確認

MCP 対応

GitHub MCPサーバーとして、リポジトリ、Issue、プルリクエスト、セキュリティアラート、通知、ユーザー情報のツールをMCPクライアントに公開します。stdioで動作し、GitHub Personal Access Tokenを使用します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"github-mcp-custom": {
"command": "npx",
"args": [
"-y",
"github-mcp-custom"
]
}
}
}
起動コマンドnpx -y github-mcp-custom

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmgithub-mcp-custom

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

GitHub MCP Custom(クロスプラットフォーム対応 NPX ラッパー)

npx を介して、Windows、Linux、macOSでシームレスに動作する、GitHub MCP Serverのカスタムパッケージ版です。Go バイナリを Node.js ランチャーでラップしているため、Claude Desktop を使用する開発者は、Docker も手動でのコンパイルも必要なく、GitHub MCP の機能を利用できます。


📦 このパッケージを作成した理由

公式の GitHub MCP Server では、次のいずれかが必要です。

  • Docker
  • Go による手動コンパイル

これらの方法は Linux/macOS では問題なく動作しますが、Windows での使用に支障が生じたり、設定が複雑になったりします。

このパッケージでは、サーバーを npx から利用できるため、次のものが不要になります。

  • Docker
  • Go のインストール
  • カスタム PATH の設定

🧠 このパッケージの機能

  • クロスプラットフォーム対応の github-mcp-custom コマンドを提供します
  • Node.js ラッパーを介してビルド済みの Go バイナリを実行します
  • すべての OS で NPX に完全対応しています
  • Claude Desktop やその他の MCP 対応ツールですぐに利用できます
  • Claude Desktop と互換性のあるプロトコルバージョンに対応しています

🚀 インストールと使用方法

🔹 方法 1:NPX で実行する(推奨)
npx -y [email protected] stdio

初回の実行時にパッケージがダウンロードされ、自動的に実行されます。

🔹 方法 2:グローバルにインストールする
npm install -g [email protected]
github-mcp-custom stdio
🔹 方法 3:実行ファイルを直接実行する(Windows の代替方法)

Windows で NPX に問題がある場合は、次の直接パスを使用してください。

{
  "mcpServers": {
    "github": {
      "command": "C:\\Users\\[USERNAME]\\AppData\\Roaming\\npm\\node_modules\\github-mcp-custom\\dist\\github-mcp-server.exe",
      "args": ["stdio"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "your_token_here"
      }
    }
  }
}

[USERNAME] を実際の Windows ユーザー名に置き換えてください。

注: Claude Desktop との互換性を最適化するには、@1.0.20 以降を使用してください。


🛠️ 前提条件

  • Node.js v14 以降がインストールされていること
  • 適切なスコープが設定された有効な GitHub Personal Access Token があること:
    • repo(リポジトリへのアクセス用)
    • read:org(組織へのアクセス用)
    • user(ユーザー情報用)

🔐 GitHub Personal Access Token の作成

  1. GitHub Settings > Developer Settings > Personal Access Tokens に移動します
  2. 「Generate new token (classic)」をクリックします
  3. 次のスコープを選択します。
    • ✅ repo - プライベートリポジトリを完全に制御
    • ✅ read:org - 組織とチームのメンバーシップを読み取り
    • ✅ user - ユーザーデータを更新
  4. 生成されたトークンをコピーします

🖥️ Claude Desktop の設定

Windows

次の場所にある Claude Desktop の設定ファイルに追加します。 %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "[email protected]", "stdio"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "your_token_here"
      }
    }
  }
}
macOS

次の場所にある Claude Desktop の設定ファイルに追加します。 ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "[email protected]", "stdio"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "your_token_here"
      }
    }
  }
}
Linux

次の場所にある Claude Desktop の設定ファイルに追加します。 ~/.config/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "[email protected]", "stdio"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "your_token_here"
      }
    }
  }
}
グローバルインストール時の代替設定

グローバルにインストールした場合は、次の設定を使用できます。

{
  "mcpServers": {
    "github": {
      "command": "github-mcp-custom",
      "args": ["stdio"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "your_token_here"
      }
    }
  }
}

🎯 利用可能なツールと機能

設定が完了すると、次の GitHub MCP ツールを利用できます。

📂 リポジトリ管理
  • search_repositories - GitHub リポジトリを検索します
  • get_file_contents - リポジトリ内のファイル内容を読み取ります
  • create_or_update_file - ファイルを作成または変更します
  • create_repository - 新しいリポジトリを作成します
  • fork_repository - リポジトリをフォークします
  • create_branch - ブランチを作成します
  • push_files - ファイルの変更をプッシュします
  • list_commits - コミット履歴を表示します
  • get_commit - 特定のコミットの詳細を取得します
🐛 イシューとプロジェクト管理
  • get_issue - タイムスタンプを含むイシューの詳細を取得します
  • create_issue - 新しいイシューを作成します
  • update_issue - イシューを更新します(タイムスタンプを含む更新情報を返します)
  • search_issues - イシュー全体を検索します
  • list_issues - リポジトリのイシュー一覧を表示します
  • get_issue_comments - タイムスタンプを含むイシューのコメントを取得します
  • add_issue_comment - イシューにコメントを追加します
🔀 プルリクエスト
  • get_pull_request - PR の詳細を取得します
  • create_pull_request - 新しい PR を作成します
  • update_pull_request - 既存の PR を更新します
  • merge_pull_request - PR をマージします
  • get_pull_request_files - PR の変更内容を確認します
  • get_pull_request_comments - PR のコメントを取得します
  • create_and_submit_pull_request_review - PR をレビューします
🔒 セキュリティとスキャン
  • list_code_scanning_alerts - コードセキュリティアラート
  • list_secret_scanning_alerts - シークレットスキャンアラート
🔔 通知
  • list_notifications - 通知を取得
  • dismiss_notification - 通知を非表示にする
  • mark_all_notifications_read - すべての通知を既読にする
👤 ユーザーとコンテキスト
  • get_me - 認証済みユーザーの詳細を取得
  • search_users - GitHub ユーザーを検索

🧪 セットアップのテスト

  1. コマンドを直接テストします:

    npx -y [email protected] stdio
    

    次のように出力されます:GitHub MCP Server running on stdio

  2. Claude Desktop でテストします:

    • 設定を更新した後、Claude Desktop を再起動します
    • 「GitHub のユーザー情報を取得できますか?」と尋ねてみます
    • Claude が get_me ツールを使用できることを確認します

🔧 トラブルシューティング

よくある問題

❌ Claude Desktop で「Server disconnected」と表示される

  • バージョン 1.0.20 以降を使用していることを確認します
  • GitHub トークンが有効で、適切なスコープが設定されていることを確認します
  • JSON 設定が有効であることを確認します(末尾にカンマがないこと)

❌ 「Command not found」と表示される

  • Node.js がインストールされ、PATH に含まれていることを確認します
  • npm --version を実行して npm が動作していることを確認します

❌ 「Authentication failed」と表示される

  • GitHub Personal Access Token が正しいことを確認します
  • トークンに必要なスコープ(repo、read:org、user)が設定されていることを確認します
  • トークンの有効期限が切れていないことを確認します

❌ 「Method not found」エラーが表示される

  • 最新バージョンに更新します:npm install -g github-mcp-custom@latest

📁 ファイル構成

github-mcp-custom/
├── bin/
│   └── index.js               # Node.js launcher
├── dist/
│   ├── github-mcp-server.exe  # Windows binary
│   ├── github-mcp-server-macos # macOS binary  
│   └── github-mcp-server-linux # Linux binary
├── package.json
└── README.md

🖥️ プラットフォームの互換性

プラットフォームテスト済み備考
✅ Windows 10/11✔️Docker や Go は不要
✅ Linux (Ubuntu)✔️インストール後すぐに使用可能
✅ macOS (Intel/M1)✔️NPX で簡単に動作

📈 バージョン履歴

  • v1.0.20 - Claude Desktop のプロトコル互換性を修正
  • v1.0.16 - 以前のバージョン(接続に問題あり)
  • v1.0.x - それ以前のリリース

👷 このプロジェクトの構築方法

  1. 公式 GitHub MCP Server リポジトリをクローンしました。
  2. Claude Desktop との互換性のためにプロトコルバージョンを更新しました。
  3. すべてのプラットフォーム向けに Go バイナリをコンパイルしました:
    GOOS=linux GOARCH=amd64 go build -o dist/github-mcp-server-linux ./cmd/github-mcp-server
    GOOS=darwin GOARCH=amd64 go build -o dist/github-mcp-server-macos ./cmd/github-mcp-server  
    GOOS=windows GOARCH=amd64 go build -o dist/github-mcp-server.exe ./cmd/github-mcp-server
    
  4. クロスプラットフォーム実行用の Node.js ラッパースクリプト(bin/index.js)を作成しました。
  5. 適切な bin 設定を含む NPM 互換の package.json を用意しました。
  6. プロトコル互換性の修正を加えたパッケージを公開しました。

🤝 コントリビューション

コントリビューションを歓迎します!GitHub リポジトリをご覧ください:

🔗 リポジトリ: https://github.com/idletoaster/github-mcp-custom

開発環境のセットアップ
  1. リポジトリをフォークしてクローンします
  2. 依存関係をインストールします:go mod tidy
  3. バイナリをビルドします:npm run build
  4. ローカルでテストします:node bin/index.js stdio
  5. 変更を加えてテストします
  6. プルリクエストを送信します

📜 ライセンス

MIT License

Copyright (c) 2025 idletoaster

本ソフトウェアおよび関連ドキュメントファイル(以下「本ソフトウェア」)のコピーを取得するすべての者に対し、本ソフトウェアを無制限に取り扱うことを無償で許可します。これには、本ソフトウェアを使用、複製、変更、結合、公開、配布、サブライセンス、および/または販売する権利、ならびに本ソフトウェアを提供された者にこれらの権利を許可する権利が含まれます。ただし、以下の条件に従うものとします。

上記の著作権表示および本許諾表示は、本ソフトウェアのすべてのコピーまたは重要な部分に含めるものとします。

本ソフトウェアは「現状のまま」提供され、明示的か黙示的かを問わず、いかなる種類の保証もありません。これには、商品性、特定目的への適合性、および権利非侵害の保証が含まれますが、これらに限定されません。いかなる場合も、作者または著作権者は、本ソフトウェアまたはその使用に起因または関連して発生する、契約、不法行為、その他の行為に基づくいかなる請求、損害、その他の責任についても責任を負いません。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。