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に対応します。
主な機能
- 01NPXまたはnpmのグローバルインストールで実行
- 02Node.jsランチャーでビルド済みGoバイナリを起動
- 03Windows、Linux、macOSに対応
- 04リポジトリ、Issue、プルリクエスト用ツール
- 05アラート、通知、ユーザーデータへのアクセス
活用シーン
- 01Claude DesktopをGitHubツールに接続
- 02リポジトリのファイルやブランチを管理
- 03Issueとプルリクエストを扱う
- 04GitHubのアラートや通知を確認
MCP 対応
GitHub MCPサーバーとして、リポジトリ、Issue、プルリクエスト、セキュリティアラート、通知、ユーザー情報のツールをMCPクライアントに公開します。stdioで動作し、GitHub Personal Access Tokenを使用します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
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 の作成
- GitHub Settings > Developer Settings > Personal Access Tokens に移動します
- 「Generate new token (classic)」をクリックします
- 次のスコープを選択します。
- ✅
repo- プライベートリポジトリを完全に制御 - ✅
read:org- 組織とチームのメンバーシップを読み取り - ✅
user- ユーザーデータを更新
- ✅
- 生成されたトークンをコピーします
🖥️ 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 ユーザーを検索
🧪 セットアップのテスト
-
コマンドを直接テストします:
npx -y [email protected] stdio次のように出力されます:
GitHub MCP Server running on stdio -
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 - それ以前のリリース
👷 このプロジェクトの構築方法
- 公式 GitHub MCP Server リポジトリをクローンしました。
- Claude Desktop との互換性のためにプロトコルバージョンを更新しました。
- すべてのプラットフォーム向けに 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 - クロスプラットフォーム実行用の Node.js ラッパースクリプト(
bin/index.js)を作成しました。 - 適切な bin 設定を含む NPM 互換の
package.jsonを用意しました。 - プロトコル互換性の修正を加えたパッケージを公開しました。
🤝 コントリビューション
コントリビューションを歓迎します!GitHub リポジトリをご覧ください:
🔗 リポジトリ: https://github.com/idletoaster/github-mcp-custom
- 🐛 問題を報告: GitHub Issues
- 💡 機能リクエスト: GitHub Discussions
- 🔧 プルリクエスト: 改善や修正を歓迎します
開発環境のセットアップ
- リポジトリをフォークしてクローンします
- 依存関係をインストールします:
go mod tidy - バイナリをビルドします:
npm run build - ローカルでテストします:
node bin/index.js stdio - 変更を加えてテストします
- プルリクエストを送信します
📜 ライセンス
MIT License
Copyright (c) 2025 idletoaster
本ソフトウェアおよび関連ドキュメントファイル(以下「本ソフトウェア」)のコピーを取得するすべての者に対し、本ソフトウェアを無制限に取り扱うことを無償で許可します。これには、本ソフトウェアを使用、複製、変更、結合、公開、配布、サブライセンス、および/または販売する権利、ならびに本ソフトウェアを提供された者にこれらの権利を許可する権利が含まれます。ただし、以下の条件に従うものとします。
上記の著作権表示および本許諾表示は、本ソフトウェアのすべてのコピーまたは重要な部分に含めるものとします。
本ソフトウェアは「現状のまま」提供され、明示的か黙示的かを問わず、いかなる種類の保証もありません。これには、商品性、特定目的への適合性、および権利非侵害の保証が含まれますが、これらに限定されません。いかなる場合も、作者または著作権者は、本ソフトウェアまたはその使用に起因または関連して発生する、契約、不法行為、その他の行為に基づくいかなる請求、損害、その他の責任についても責任を負いません。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。