gha-intel について
gha-intelは、GitHub Actionsの実行性能とワークフロー設定を調べるチーム向けのMCPサーバーです。実行時間の集計やYAMLの改善点の監査、リポジトリのキャッシュ使用量確認を行います。アカウント課金情報は廃止済みのGitHub APIにより制限されます。
主な機能
- 01ワークフローとジョブの実行時間統計
- 02ワークフローYAML設定の監査
- 03リポジトリのキャッシュ使用量確認
- 04stdio、HTTP、Dockerでのデプロイ
活用シーン
- 01最近のワークフロー実行時間の傾向を確認
- 02YAML内のキャッシュや並列処理の改善点を探す
- 03リポジトリのキャッシュ使用量を確認
MCP 対応
ワークフロー時間分析、YAML監査、リポジトリのキャッシュおよび実行使用量確認ツールを提供します。stdioとHTTPのトランスポートに対応します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
3掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| repo | string | はい | GitHub リポジトリ名 |
| count | integer | いいえ | 分析する最近の実行数(デフォルト:10、最大:100) |
| owner | string | はい | GitHub リポジトリの所有者(ユーザーまたは組織) |
| workflow_id | string | はい | ワークフローファイル名(例:ci.yml)または数値のワークフロー ID |
詳細
gha-intel-mcp
MCP を通じて GitHub Actions の実行時間を調べ、ワークフローの設定を確認します。
ツール
| ツール | 説明 |
|---|---|
list_workflow_performance | 最近のワークフロー実行について、平均、最小、最大、p95 の実行時間統計を算出します。 |
analyze_workflow_config | ワークフロー YAML を評価し、キャッシュ、並列処理、同時実行、アーティファクト、チェックアウトの深さ、タイムアウト、ランナーの固定、Docker キャッシュ、トリガーを確認します。 |
get_billing_usage | リポジトリのキャッシュ使用量と最近の実行時間を読み取ります。アカウントの請求には廃止されたエンドポイントが使用されます。詳しくは以下の制限事項をご覧ください。 |
要件
- Node.js >= 18(ネイティブの
fetchを使用) - 調査するリポジトリにアクセスできる GitHub トークン。アクセスを許可する前に、トークンの種類とエンドポイントの権限を確認してください。
セットアップ
3 つのトランスポートモードを利用できます。デプロイに適したものを選択してください。
オプション A:stdio(ローカル、デスクトップクライアントに推奨)
サーバーは MCP クライアントのサブプロセスとして、stdin/stdout 経由で実行されます。ネットワークポートは不要です。
Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json(macOS)
%APPDATA%\Claude\claude_desktop_config.json(Windows)
{
"mcpServers": {
"gha-intel": {
"command": "npx",
"args": ["-y", "@barissozudogru/gha-intel-mcp"],
"env": {
"GITHUB_TOKEN": "ghp_your_token"
}
}
}
}
Claude Code
claude mcp add gha-intel -e GITHUB_TOKEN=ghp_your_token -- npx -y @barissozudogru/gha-intel-mcp
Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"gha-intel": {
"command": "npx",
"args": ["-y", "@barissozudogru/gha-intel-mcp"],
"env": {
"GITHUB_TOKEN": "ghp_your_token"
}
}
}
}
Windsurf
~/.codeium/windsurf/mcp_config.json
{
"mcpServers": {
"gha-intel": {
"command": "npx",
"args": ["-y", "@barissozudogru/gha-intel-mcp"],
"env": {
"GITHUB_TOKEN": "ghp_your_token"
}
}
}
}
VS Code + Copilot
.vscode/mcp.json(ワークスペース)またはユーザー設定
{
"servers": {
"gha-intel": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@barissozudogru/gha-intel-mcp"],
"env": {
"GITHUB_TOKEN": "ghp_your_token"
}
}
}
}
Cline
Cline の設定を開き、MCP Servers に移動して、次を追加します。
{
"mcpServers": {
"gha-intel": {
"command": "npx",
"args": ["-y", "@barissozudogru/gha-intel-mcp"],
"env": {
"GITHUB_TOKEN": "ghp_your_token"
}
}
}
}
Continue.dev
~/.continue/config.yaml
mcpServers:
- name: gha-intel
command: npx
args:
- -y
- "@barissozudogru/gha-intel-mcp"
env:
GITHUB_TOKEN: ghp_your_token
Zed
~/.config/zed/settings.json
{
"context_servers": {
"gha-intel": {
"command": {
"path": "npx",
"args": ["-y", "@barissozudogru/gha-intel-mcp"],
"env": {
"GITHUB_TOKEN": "ghp_your_token"
}
}
}
}
}
JetBrains(IntelliJ、PyCharm、WebStorm など)
Settings > Tools > AI Assistant > MCP に移動して、次を追加します。
{
"mcpServers": {
"gha-intel": {
"command": "npx",
"args": ["-y", "@barissozudogru/gha-intel-mcp"],
"env": {
"GITHUB_TOKEN": "ghp_your_token"
}
}
}
}
オプション B:HTTP(リモートまたはクラウドのクライアント)
サーバーを HTTP モードで起動し、クライアントからエンドポイントを指定します。
GITHUB_TOKEN=ghp_your_token npx @barissozudogru/gha-intel-mcp --http
# Server listens on http://0.0.0.0:3000/mcp
# Health check: http://localhost:3000/health
フラグの代わりに環境変数で設定することもできます。
TRANSPORT=http PORT=3000 GITHUB_TOKEN=ghp_your_token npx @barissozudogru/gha-intel-mcp
Cursor(HTTP)
~/.cursor/mcp.json
{
"mcpServers": {
"gha-intel": {
"url": "http://localhost:3000/mcp"
}
}
}
VS Code + Copilot(HTTP)
.vscode/mcp.json
{
"servers": {
"gha-intel": {
"type": "http",
"url": "http://localhost:3000/mcp"
}
}
}
Windsurf(HTTP)
~/.codeium/windsurf/mcp_config.json
{
"mcpServers": {
"gha-intel": {
"serverUrl": "http://localhost:3000/mcp"
}
}
}
Continue.dev(HTTP)
~/.continue/config.yaml
mcpServers:
- name: gha-intel
url: http://localhost:3000/mcp
オプション C:Docker
docker build -t gha-intel-mcp .
docker run -p 3000:3000 -e GITHUB_TOKEN=ghp_your_token gha-intel-mcp
コンテナはデフォルトで HTTP モードで起動します。クライアントから http://localhost:3000/mcp を指定してください。
ツールのリファレンス
list_workflow_performance
実際の実行時間データを取得し、ジョブ単位の統計を算出します。
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
owner | string | yes | GitHub の所有者(ユーザーまたは組織) |
repo | string | yes | リポジトリ名 |
workflow_id | string | yes | ワークフローファイル名(例:ci.yml)または数値 ID |
count | number | no | 分析する最近の実行数(デフォルト:10、最大:100) |
出力: ジョブごとおよびステップごとの実行時間統計(平均、最小、最大、p95)、実行全体の時間、最近の実行結果の一覧。
analyze_workflow_config
ワークフロー YAML を解析し、最適化の機会を監査します。
| Parameter | Type | Required | Description |
|---|---|---|---|
workflow_content | string | yes | ワークフローファイルの完全な YAML コンテンツ |
出力: 重大度(critical/warning/info/good)ごとに分類された調査結果を、9 つのカテゴリにわたって提示します。それぞれに具体的な推奨事項が含まれます。
分析対象カテゴリ: 依存関係のキャッシュ、マトリックス戦略と fail-fast、同時実行グループと cancel-in-progress、アーティファクトのアップロード、git checkout の深さ、ジョブの timeout-minutes、ランナーのバージョン固定、Docker レイヤーのキャッシュ、トリガーのパスフィルター。
get_billing_usage
リポジトリのキャッシュ使用量と最近の実行時間の推定値を取得します。アカウントの請求情報は、廃止された API 連携により現在制限されています。
| Parameter | Type | Required | Description |
|---|---|---|---|
owner | string | yes | GitHub のユーザー名または組織名 |
repo | string | no | リポジトリ単位のキャッシュと実行統計情報を取得するリポジトリ名 |
出力: repo が指定された場合、取得可能なキャッシュ使用量と最近の実行時間を提示します。アカウントの請求情報リクエストでは、廃止された GitHub エンドポイントを使用するため、失敗する場合があります。既存のコスト推定値は過去の料金表に基づいているため、現在の請求額として扱わないでください。
環境変数
| Variable | Required | Description |
|---|---|---|
GITHUB_TOKEN | yes | GitHub の個人用アクセストークンです。アクセス権は、リクエスト対象のリポジトリとエンドポイントに適合している必要があります。トークンはバージョン管理の対象外にしてください。 |
TRANSPORT | no | HTTP モードを有効にするには http を設定します(デフォルト:stdio)。 |
PORT | no | HTTP モードで実行する際の HTTP ポートです(デフォルト:3000)。 |
制限事項とデプロイ
- アカウントの請求情報には
/settings/billing/actionsを使用しますが、GitHub はこの機能を 2025 年 9 月に廃止しました。 トークンのスコープを広げても、これらのエンドポイントは復元されません。リポジトリのキャッシュと実行時間のリクエストには、別のエンドポイントを使用します。 - 現在のコスト推定値は過去の料金に基づいており、キャッシュ使用率は 10 GB の固定上限を前提としています。容量や予算の判断に使用する前に、アカウント設定を確認してください。
- HTTP モードはすべてのインターフェースでリッスンし、クライアント認証を実装していません。信頼できるネットワーク内で使用するか、認証済みのゲートウェイの背後に配置してください。サーバーは、クライアントからのリクエストに設定済みの GitHub トークンを使用します。
- 実行時間の統計情報は、取得した実行の内容を示すものであり、将来の実行を予測するものではありません。
開発とサポート
問題は GitHub issues から報告してください。コントリビューションのワークフローについては、CONTRIBUTING.md を参照してください。
Node.js 22 でソースコードをチェックアウトしてビルドおよびテストするには:
npm ci
npm test
npm run build
デフォルトブランチには、npm にまだ公開されていない変更が含まれている場合があります。
ライセンス
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。