Gha Intel

io.github.barissozudogru由 GitHub 账号 barissozudogru 发布v0.4.3更新于 Oct 25, 2026

Workflow timing analysis, configuration audit and billing insight for GitHub Actions.

概览

AI 生成的概览

本地 MCP 服务器,让助手查看 GitHub Actions 运行耗时、审查工作流 YAML 的优化空间,并读取仓库缓存用量。

可以做什么
统计近期工作流运行的耗时:按作业和步骤计算平均值、最小值、最大值和 p95,并列出近期运行结论,可分析最多 100 次运行。审查工作流 YAML 的优化空间,覆盖依赖缓存、矩阵策略、并发组、产物上传、检出深度、超时、运行器版本固定、Docker 缓存和触发路径过滤,按严重程度给出发现与建议。按所有者及可选仓库读取仓库缓存消耗和近期运行耗时估算。
适用场景
适合让助手解释 CI 为何变慢、比较工作流运行耗时,或在合并改动前审查 GitHub Actions 工作流文件中的缓存、并发和超时设置。
运行要求
以 Node.js 本地进程运行(需 Node.js 18 或更高版本),通过 npm 包通常以 npx 经 stdio 启动;文档还提供 HTTP 和 Docker 模式。需要设置 GITHUB_TOKEN 环境变量,并具备对所检查仓库和端点的读取权限。需要访问 GitHub API 的网络连接。
安装前请注意
需要在配置中保存 GitHub 令牌,应避免提交到版本控制,并只授予所需的仓库和端点权限。HTTP 模式监听所有网络接口且没有客户端认证,并使用配置的令牌处理请求,应仅在可信网络中使用或置于带认证的网关之后。账户账单接口已停用,费用估算基于历史费率,不应据此做预算决策。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Gha Intel,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

[gha-intel-mcp]

gha-intel-mcp

[npm version] [License: MIT]

npm · Source · Issues

Inspect GitHub Actions run timing and review workflow configuration through MCP.

Tools

ToolDescription
list_workflow_performanceComputes average, min, max, and p95 duration statistics for recent workflow runs.
analyze_workflow_configEvaluates workflow YAML for caching, parallelism, concurrency, artifacts, checkout depth, timeouts, runner pinning, Docker caching, and triggers.
get_billing_usageReads repository cache usage and recent run timing. Account billing uses retired endpoints; see limitations below.

Requirements

  • Node.js >= 18 (uses native fetch)
  • A GitHub token with access to the repositories you want to inspect. See your token type and endpoint permissions before granting access.

Setup

Three transport modes are available. Choose whichever fits your deployment:


Option A: stdio (local, recommended for desktop clients)

The server runs as a subprocess of the MCP client over stdin/stdout. No network port required.

Claude Desktop

~/Library/Application Support/Claude/claude_desktop_config.json (macOS) %APPDATA%\Claude\claude_desktop_config.json (Windows)

json
{  "mcpServers": {    "gha-intel": {      "command": "npx",      "args": ["-y", "@barissozudogru/gha-intel-mcp"],      "env": {        "GITHUB_TOKEN": "ghp_your_token"      }    }  }}
Claude Code
bash
claude mcp add gha-intel -e GITHUB_TOKEN=ghp_your_token -- npx -y @barissozudogru/gha-intel-mcp
Cursor

~/.cursor/mcp.json

json
{  "mcpServers": {    "gha-intel": {      "command": "npx",      "args": ["-y", "@barissozudogru/gha-intel-mcp"],      "env": {        "GITHUB_TOKEN": "ghp_your_token"      }    }  }}
Windsurf

~/.codeium/windsurf/mcp_config.json

json
{  "mcpServers": {    "gha-intel": {      "command": "npx",      "args": ["-y", "@barissozudogru/gha-intel-mcp"],      "env": {        "GITHUB_TOKEN": "ghp_your_token"      }    }  }}
VS Code + Copilot

.vscode/mcp.json (workspace) or user settings

json
{  "servers": {    "gha-intel": {      "type": "stdio",      "command": "npx",      "args": ["-y", "@barissozudogru/gha-intel-mcp"],      "env": {        "GITHUB_TOKEN": "ghp_your_token"      }    }  }}
Cline

Open Cline settings, navigate to MCP Servers, and add:

json
{  "mcpServers": {    "gha-intel": {      "command": "npx",      "args": ["-y", "@barissozudogru/gha-intel-mcp"],      "env": {        "GITHUB_TOKEN": "ghp_your_token"      }    }  }}
Continue.dev

~/.continue/config.yaml

yaml
mcpServers:  - name: gha-intel    command: npx    args:      - -y      - "@barissozudogru/gha-intel-mcp"    env:      GITHUB_TOKEN: ghp_your_token
Zed

~/.config/zed/settings.json

json
{  "context_servers": {    "gha-intel": {      "command": {        "path": "npx",        "args": ["-y", "@barissozudogru/gha-intel-mcp"],        "env": {          "GITHUB_TOKEN": "ghp_your_token"        }      }    }  }}
JetBrains (IntelliJ, PyCharm, WebStorm, etc.)

Go to Settings > Tools > AI Assistant > MCP and add:

json
{  "mcpServers": {    "gha-intel": {      "command": "npx",      "args": ["-y", "@barissozudogru/gha-intel-mcp"],      "env": {        "GITHUB_TOKEN": "ghp_your_token"      }    }  }}

Option B: HTTP (remote or cloud clients)

Start the server in HTTP mode and point clients at the endpoint:

bash
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

Or set via environment variable instead of the flag:

bash
TRANSPORT=http PORT=3000 GITHUB_TOKEN=ghp_your_token npx @barissozudogru/gha-intel-mcp
Cursor (HTTP)

~/.cursor/mcp.json

json
{  "mcpServers": {    "gha-intel": {      "url": "http://localhost:3000/mcp"    }  }}
VS Code + Copilot (HTTP)

.vscode/mcp.json

json
{  "servers": {    "gha-intel": {      "type": "http",      "url": "http://localhost:3000/mcp"    }  }}
Windsurf (HTTP)

~/.codeium/windsurf/mcp_config.json

json
{  "mcpServers": {    "gha-intel": {      "serverUrl": "http://localhost:3000/mcp"    }  }}
Continue.dev (HTTP)

~/.continue/config.yaml

yaml
mcpServers:  - name: gha-intel    url: http://localhost:3000/mcp

Option C: Docker

bash
docker build -t gha-intel-mcp .docker run -p 3000:3000 -e GITHUB_TOKEN=ghp_your_token gha-intel-mcp

The container starts in HTTP mode by default. Point your client at http://localhost:3000/mcp.


Tool Reference

list_workflow_performance

Fetch real run timing data and compute job-level statistics.

ParameterTypeRequiredDescription
ownerstringyesGitHub owner (user or org)
repostringyesRepository name
workflow_idstringyesWorkflow file name (e.g. ci.yml) or numeric ID
countnumbernoNumber of recent runs to analyse (default: 10, max: 100)

Output: Per-job and per-step timing stats (avg, min, max, p95), overall run timing, and a list of recent run conclusions.


analyze_workflow_config

Parse and audit a workflow YAML for optimisation opportunities.

ParameterTypeRequiredDescription
workflow_contentstringyesFull YAML content of the workflow file

Output: Findings grouped by severity (critical / warning / info / good) across nine categories, each with a concrete recommendation.

Categories analysed: Dependency caching, matrix strategy and fail-fast, concurrency groups and cancel-in-progress, artifact uploads, git checkout depth, job timeout-minutes, runner version pinning, Docker layer caching, and trigger path filters.


get_billing_usage

Retrieve repository cache consumption and recent run estimates. Account billing is currently limited by a retired API integration.

ParameterTypeRequiredDescription
ownerstringyesGitHub username or organisation
repostringnoRepository name for repo-scoped cache and run stats

Output: With repo supplied, cache usage and recent run timing where accessible. Account billing requests use retired GitHub endpoints and can fail. Existing cost estimates use a historical rate table and should not be treated as current charges.


Environment Variables

VariableRequiredDescription
GITHUB_TOKENyesGitHub personal access token. Access must match the requested repository and endpoint. Keep the token outside version control.
TRANSPORTnoSet to http to enable HTTP mode (default: stdio).
PORTnoHTTP port when running in HTTP mode (default: 3000).

Limitations and deployment

  • Account billing uses /settings/billing/actions, which GitHub retired in September 2025. Granting broader token scopes does not restore those endpoints. Repository cache and run timing requests use separate endpoints.
  • Current cost estimates use historical rates, and cache utilisation assumes a fixed 10 GB limit. Review account configuration before using either for capacity or budget decisions.
  • HTTP mode listens on all interfaces and does not implement client authentication. Keep it on a trusted network or place an authenticated gateway in front of it. The server uses its configured GitHub token for client requests.
  • Timing statistics describe the fetched runs, rather than predicting a future run.

Development and support

Report problems through GitHub issues. See CONTRIBUTING.md for the contribution workflow.

To build and test a source checkout with Node.js 22:

bash
npm cinpm testnpm run build

The default branch can contain changes that have not yet been published to npm.

License

MIT

来源:README.md,提交 6ca9015

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.4.3最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分