GitHub Enterprise MCP サーバー
GitHub Enterprise APIとの統合のためのMCP(Model Context Protocol)サーバー。このサーバーは、CursorからGitHub Enterpriseのリポジトリ情報、問題、PRなどに簡単にアクセスするためのMCPインターフェースを提供します。
互換性
このプロジェクトは主に GitHub Enterprise Server 環境向けに設計されていますが、以下の環境でも動作します。
GitHub.com
GitHubエンタープライズクラウド
注: 一部のエンタープライズ固有の機能 (ライセンス情報やエンタープライズ統計など) は、GitHub.com または GitHub Enterprise Cloud では動作しません。
Related MCP server: GitHub MCP Server Plus
主な特徴
GitHub Enterpriseインスタンスからリポジトリリストを取得する
詳細なリポジトリ情報を取得する
リポジトリのブランチを一覧表示する
ファイルとディレクトリの内容を表示する
問題とプルリクエストを管理する
リポジトリ管理(作成、更新、削除)
GitHub Actionsワークフロー管理
ユーザー管理(ユーザーの一覧表示、作成、更新、削除、一時停止/一時停止解除)
企業統計にアクセスする
強化されたエラー処理とユーザーフレンドリーな応答フォーマット
はじめる
前提条件
Node.js 18以上
GitHub Enterpriseインスタンスへのアクセス
個人アクセストークン(PAT)
Dockerのインストールとセットアップ
オプション1: Dockerで実行する
Docker イメージをビルドします。
docker build -t github-enterprise-mcp .環境変数を使用して Docker コンテナを実行します。
docker run -p 3000:3000 \ -e GITHUB_TOKEN="your_github_token" \ -e GITHUB_ENTERPRISE_URL="https://github.your-company.com/api/v3" \ -e DEBUG=true \ github-enterprise-mcp
注:Dockerfileはデフォルトで
--transport httpで実行されるように設定されています。これを変更する必要がある場合は、コマンドをオーバーライドできます。
オプション2: Docker Composeを使用する
必要な環境変数を含む
.envファイルをプロジェクト ルートに作成します。GITHUB_ENTERPRISE_URL=https://github.your-company.com/api/v3 GITHUB_TOKEN=your_github_token DEBUG=trueDocker Compose を使用してコンテナを起動します。
docker-compose up -dログを確認します:
docker-compose logs -fコンテナを停止します。
docker-compose down
インストールとセットアップ
ローカル開発(並行モードの使用)
自動再コンパイルとサーバーの再起動を伴うアクティブな開発には、この方法をお勧めします。
リポジトリをクローンし、必要なパッケージをインストールします。
git clone https://github.com/ddukbg/github-enterprise-mcp.git cd github-enterprise-mcp npm install開発サーバーを実行します。
export GITHUB_TOKEN="your_github_token" export GITHUB_ENTERPRISE_URL="https://github.your-company.com/api/v3" npm run devこれにより、次のようになります。
ファイルが変更されたときに TypeScript コードを自動的にコンパイルする
コンパイルされたファイルが更新されたらサーバーを再起動します
URLベースの接続ではサーバーをHTTPモードで実行する
下記の説明に従ってURLモードを使用してカーソルに接続します
生産のためのインストールとセットアップ
オプション 1: URL モードの使用 (ローカル開発に推奨)
この方法は最も安定しており、ローカル開発やテストに推奨されます。
リポジトリをクローンし、必要なパッケージをインストールします。
git clone https://github.com/ddukbg/github-enterprise-mcp.git cd github-enterprise-mcp npm installプロジェクトをビルドします。
npm run build chmod +x dist/index.jsサーバーを実行します。
export GITHUB_TOKEN="your_github_token" export GITHUB_ENTERPRISE_URL="https://github.your-company.com/api/v3" node dist/index.js --transport http --debugURL モードを使用してカーソルに接続します。
カーソルの
.cursor/mcp.jsonファイルに次のコードを追加します。
{ "mcpServers": { "github-enterprise": { "url": "http://localhost:3000/sse" } } }
オプション2: グローバルコマンドとしてインストールする (npm リンク)
この方法はローカル開発に役立ちます。
オプション3: npx を使用する (パッケージが公開されている場合)
パッケージがパブリック npm レジストリに公開されている場合:
AIツールとの統合
クロードデスクトップ
claude_desktop_config.jsonに以下を追加します。
YOUR_GITHUB_TOKENとYOUR_GITHUB_ENTERPRISE_URLを実際の値に置き換えます。
カーソル
推奨: URL モード (最も安定)
カーソルで最も信頼性の高い操作を行うには、URL モードの使用をお勧めします。
別のターミナル ウィンドウでサーバーを起動します。
cd /path/to/github-enterprise-mcp GITHUB_ENTERPRISE_URL="https://github.your-company.com/api/v3" GITHUB_TOKEN="your_github_token" node dist/index.js --transport httpカーソルの MCP 設定を構成します。
カーソルを開いて設定へ移動します
AI > MCPサーバーへ移動
.cursor/mcp.jsonファイルを編集します。
{ "mcpServers": { "github-enterprise": { "url": "http://localhost:3000/sse" } } }変更を適用するにはカーソルを再起動してください
代替手段: コマンドモード
あるいは、コマンド モードを使用するように Cursor を構成することもできますが、URL モードの方が信頼性が高いです。
カーソルを開いて設定へ移動します
AI > MCPサーバーへ移動
MCPサーバーの追加をクリック
次の詳細を入力してください。
名前: GitHub Enterprise
コマンド:
npx引数:
@ddukbg/github-enterprise-mcp環境変数:
GITHUB_ENTERPRISE_URL: GitHub Enterprise API の URLGITHUB_TOKEN: GitHub個人アクセストークン
あるいは、 .cursor/mcp.jsonファイルを手動で編集して、次の内容を含めることもできます。
言語設定
このMCPサーバーは英語と韓国語の両方をサポートしています。言語は以下の方法で設定できます。
環境変数
コマンドライン引数
指定されていない場合はデフォルトの言語は英語になります。
HTTPモードの追加オプション
--debug: デバッグログを有効にする--github-enterprise-url <URL>: GitHub Enterprise API URL を設定する--token <TOKEN>: GitHub個人アクセストークンを設定する--language <LANG>: 言語を設定します (en または ko、デフォルト: en)
利用可能なMCPツール
この MCP サーバーは次のツールを提供します。
ツール名 | 説明 | パラメータ | 必要なPAT権限 |
| ユーザーまたは組織のリポジトリリストを取得する |
: ユーザー名/組織名
: 組織かどうか
: リポジトリの種類
: 並べ替えの基準
: ページ数
: ページあたりの項目数 |
|
| 詳細なリポジトリ情報を取得する |
: リポジトリの所有者
: リポジトリ名 |
|
| リポジトリのブランチを一覧表示する |
: リポジトリの所有者
: リポジトリ名
: 保護されたブランチのみを表示するかどうか
: ページ番号
: ページあたりの項目数 |
|
| ファイルまたはディレクトリの内容を取得する |
: リポジトリの所有者
: リポジトリ名
: ファイル/ディレクトリパス
: ブランチ/コミット(オプション) |
|
| リポジトリ内のプルリクエストを一覧表示する |
: リポジトリの所有者
: リポジトリ名
: PRの状態 filter
: 並べ替えの基準
: 並べ替えの方向
: ページ番号
: ページあたりの項目数 |
|
| プルリクエストの詳細を取得する |
: リポジトリのオーナー
: リポジトリ名
: プルリクエスト番号 |
|
| 新しいプルリクエストを作成する |
: リポジトリの所有者
: リポジトリ名
: PR のタイトル
: ヘッドブランチ
: ベースブランチ
: PR の説明
: ドラフト PR として作成 |
|
| プルリクエストをマージする |
: リポジトリのオーナー
: リポジトリ名
: プルリクエスト番号
: マージ方法
: コミットタイトル
: コミットメッセージ |
|
| リポジトリ内の問題を一覧表示する |
: リポジトリの所有者
: リポジトリ名
: 問題の状態 filter
: 並べ替えの基準
: 並べ替えの方向
: ページ番号
: ページあたりの項目数 |
|
| 問題の詳細を取得する |
: リポジトリの所有者
: リポジトリ名
: 問題番号 |
|
| 問題またはプルリクエストのコメントを一覧表示する |
: リポジトリの所有者
: リポジトリ名
: Issue/PR番号
: ページ番号
: ページあたりの項目数 |
|
| 新しい問題を作成する |
: リポジトリの所有者
: リポジトリ名
: 課題のタイトル
: 課題の本文
: ラベル名の配列
: ユーザーログインの配列
: マイルストーンID |
|
| 新しいリポジトリを作成する |
: リポジトリ名
: リポジトリの説明
: プライベートかどうか
: README で初期化
: .gitignore を追加
: ライセンスを追加
: 組織名 |
|
| リポジトリ設定を更新する |
: リポジトリの所有者
: リポジトリ名
: 新しい説明
: プライバシーの変更
: デフォルトブランチの変更
: 課題の有効化/無効化
: プロジェクトの有効化/無効化
: wiki の有効化/無効化
: アーカイブ/アーカイブ解除 |
|
| リポジトリを削除する |
: リポジトリの所有者
: リポジトリ名
: 確認(trueである必要があります) |
|
| GitHub Actionsワークフローの一覧 |
: リポジトリの所有者
: リポジトリ名
: ページ番号
: ページあたりの項目数 |
|
| ワークフロー実行の一覧 |
: リポジトリの所有者
: リポジトリ名
: ワークフローID/ファイル名
: ブランチでフィルタリング
: ステータスでフィルタリング
: ページ番号
: ページあたりの項目数 |
|
| ワークフローをトリガーする |
: リポジトリの所有者
: リポジトリ名
: ワークフローID/ファイル名
: Git参照
: ワークフローの入力 |
|
| GitHub Enterprise ライセンス情報を取得する | - | site_admin(管理者)アカウントが必要です |
| GitHub Enterprise のシステム統計を取得する | - | site_admin(管理者)アカウントが必要です |
注:エンタープライズ固有のツール(
get-license-infoおよびget-enterprise-stats)を使用するには、サイト管理者権限を持つユーザーが必要です。Fine-grained トークンではこれらのエンタープライズレベルの権限をサポートできない可能性があるため、Classic Personal Access Token の使用を推奨します。
カーソルのツールの使用
MCPサーバーをセットアップし、CursorをMCPサーバーに接続するように設定したら、CursorのAIチャットでGitHub Enterpriseツールを直接使用できるようになります。以下に例をいくつか示します。
リポジトリの一覧表示
リポジトリ情報の取得
プルリクエストの一覧表示
問題の管理
リポジトリコンテンツの操作
リポジトリ管理
ユーザー管理(エンタープライズのみ)
これらの機能は、GitHub Enterprise Server 環境向けに特別に設計されており、管理者権限が必要です。
APIの改善
柔軟な API URL 構成 (さまざまな環境変数とコマンドライン引数をサポート)
強化されたエラー処理とタイムアウト管理
ユーザーフレンドリーな応答フォーマットとメッセージ
貢献
貢献を歓迎します!お気軽にプルリクエストを送信してください。
ライセンス
ISC