mcpField
G
gha-intel

gha-intel

ローカル
github.com/barissozudogruクラウド・インフラ21 日前に更新

gha-intel について

gha-intelは、GitHub Actionsの実行性能とワークフロー設定を調べるチーム向けのMCPサーバーです。実行時間の集計やYAMLの改善点の監査、リポジトリのキャッシュ使用量確認を行います。アカウント課金情報は廃止済みのGitHub APIにより制限されます。

主な機能

  1. 01ワークフローとジョブの実行時間統計
  2. 02ワークフローYAML設定の監査
  3. 03リポジトリのキャッシュ使用量確認
  4. 04stdio、HTTP、Dockerでのデプロイ

活用シーン

  1. 01最近のワークフロー実行時間の傾向を確認
  2. 02YAML内のキャッシュや並列処理の改善点を探す
  3. 03リポジトリのキャッシュ使用量を確認

MCP 対応

ワークフロー時間分析、YAML監査、リポジトリのキャッシュおよび実行使用量確認ツールを提供します。stdioとHTTPのトランスポートに対応します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"barissozudogru-gha-intel": {
"command": "npx",
"args": [
"-y",
"@barissozudogru/gha-intel-mcp"
],
"env": {
"GITHUB_TOKEN": "<GITHUB_TOKEN>"
}
}
}
}
起動コマンドnpx -y @barissozudogru/gha-intel-mcp
設定が必要な環境変数
GITHUB_TOKENシークレットGitHub token with repository and actions read access, for the GitHub API.

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

パッケージ
npm@barissozudogru/gha-intel-mcp0.4.3

ツール

3

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
repostringはいGitHub リポジトリ名
countintegerいいえ分析する最近の実行数(デフォルト:10、最大:100)
ownerstringはいGitHub リポジトリの所有者(ユーザーまたは組織)
workflow_idstringはいワークフローファイル名(例:ci.yml)または数値のワークフロー ID

詳細

gha-intel-mcp

gha-intel-mcp

npm version License: MIT

npm · ソース · Issues

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

実際の実行時間データを取得し、ジョブ単位の統計を算出します。

パラメーター型必須説明
ownerstringyesGitHub の所有者(ユーザーまたは組織)
repostringyesリポジトリ名
workflow_idstringyesワークフローファイル名(例:ci.yml)または数値 ID
countnumberno分析する最近の実行数(デフォルト:10、最大:100)

出力: ジョブごとおよびステップごとの実行時間統計(平均、最小、最大、p95)、実行全体の時間、最近の実行結果の一覧。


analyze_workflow_config

ワークフロー YAML を解析し、最適化の機会を監査します。

ParameterTypeRequiredDescription
workflow_contentstringyesワークフローファイルの完全な YAML コンテンツ

出力: 重大度(critical/warning/info/good)ごとに分類された調査結果を、9 つのカテゴリにわたって提示します。それぞれに具体的な推奨事項が含まれます。

分析対象カテゴリ: 依存関係のキャッシュ、マトリックス戦略と fail-fast、同時実行グループと cancel-in-progress、アーティファクトのアップロード、git checkout の深さ、ジョブの timeout-minutes、ランナーのバージョン固定、Docker レイヤーのキャッシュ、トリガーのパスフィルター。


get_billing_usage

リポジトリのキャッシュ使用量と最近の実行時間の推定値を取得します。アカウントの請求情報は、廃止された API 連携により現在制限されています。

ParameterTypeRequiredDescription
ownerstringyesGitHub のユーザー名または組織名
repostringnoリポジトリ単位のキャッシュと実行統計情報を取得するリポジトリ名

出力: repo が指定された場合、取得可能なキャッシュ使用量と最近の実行時間を提示します。アカウントの請求情報リクエストでは、廃止された GitHub エンドポイントを使用するため、失敗する場合があります。既存のコスト推定値は過去の料金表に基づいているため、現在の請求額として扱わないでください。


環境変数

VariableRequiredDescription
GITHUB_TOKENyesGitHub の個人用アクセストークンです。アクセス権は、リクエスト対象のリポジトリとエンドポイントに適合している必要があります。トークンはバージョン管理の対象外にしてください。
TRANSPORTnoHTTP モードを有効にするには http を設定します(デフォルト:stdio)。
PORTnoHTTP モードで実行する際の 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 にまだ公開されていない変更が含まれている場合があります。

ライセンス

MIT

コメント

MCP は初めてですか?

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

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