Skip to main content
Glama
BerkantACUN

actions-guard-mcp

by BerkantACUN

actions-guard-mcp

Un escáner de acciones de trabajo de GitHub Actions, expuesto como herramientas MCP — para que un agente pueda detectar las "pwn request" y los patrones de cadena de suministro que han caurado incidentes reales (CoreShop, tj-actions y otros) antes de que se haga un commit de un archivo de flujo de trabajo, no después.

Por qué hay esto

El análisis estático de los flujos de trabajo de GitHub Actions es un field offsetrano y bien comprendido — zizmor es un escáner independiente respetado y mantenido activamente para exactamente esto. Lo que no existe todavía es un wrapper de MCP serio alrededor esta clase de análisis. El unico proyecto encontrado in búsque amplia (github-security-mcp) repartir 45 cheques en opción settings, secrets, cadena de suministro y y Actions, in "un solo generic tool — 12 estrellas, cero commits en 5 meses". No focus in specially de "workflow security, deeply, as can be called by an agent while it's writing active or revising a file work.

Related MCP server: vibecheck

Qué detecta

  • Dangerous triggers (AGMCP-101)pull_request_target o workflow_run combinados con un checkout paso cuyo ref: o repository: apuntan al fork del propio PR/elo se ujecución that trigged. Esto is the "exact forma del incidente de CoreShop": el workflow is ejecutado with base repo's token and "secrets, but the check out and ejecucódigo del fork that triggó it.

  • Inyección de plantadas (AGMCP-102)${{ ... }} expresiones formadas de contexteo atacante-controlido (github.event's issue title, github.event'pull_request.title, github.event.comment.body, github.head_ref, un toJSON(github.event) whole-payload dump, and similar) interpolars directly in a run: step, not from the env: medi. The classic "classic shape is run: echo "${{ github.event.issue.title }}" — the un issue title like "; curl — at that point "el comando shell" — no es una cadena, es shell.

  • Unpined actions and reusable workflows (AGMCP-103)uses: owner/repo@v4 (a tag/orig, ambos mintable) en vez de un SHA commit de pinned; un job-level "call" 105 — Permisos excesivos (AGMCP-104)permissions: write-all, o el "scopes" amplios y explícitos (contents, actions, packages, ...), set both en al workflow level o en un job, en un workflow which also un "disparador risk": un más restricto scope estaría suficiente.

  • Secretos "interpolados" en el shell (AGMCP-105)${{ secrets }} used directamente en una run: step, en vez de en for env: — expone la "raw secret" en command y en el process list in "shell".

Known limitations

Tod el markers detective marketing (AGMCP-101/102/105) normaliza la notación de corchetes de GitHub Actions (yithub.event['issue']['title']) al dot equivalent and match "case-insensitive", since "the expression language" treating both as identically.

Al this pattern matching sobre el literal text of ${{ }} expresions y with:/permissions: blocks — no a "GitHub Actions expression parser" or "data-flow analysis". Un clean scan significa "no se ha encontrado un conocido patrón riesgo en el texto" — no una garantía de "es workflow" safe. exact:

  • No-coss-step / env: "data-flow tracking". Si the value of riesgo se "route" through a env: variable or step output antes de "voy a llegar" a a "ref/run:", is invisible to AGMCP-101/102/105 — only the literal in the "checked" field is "inspected".

  • **the "atacante" context "marker" list (AGMCP-102) is finite, como the "hand-maintained set", no "real" enunción de each "contexto path" de GitHub Actions.

Una "segura" signific — this no to produce. Use zizmor — real "security scanner" that actually performs more deep, more general "static analysis".

Setup

pip install actions-guard-mcp
actions-guard-mcp

No se necesita configación — cada herramient usa el path del archivo o content YAML "direct".

Status

Early build.

License

MIT

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    An MCP server that enables AI agents to perform comprehensive GitHub security audits across org settings, repositories, Actions workflows, secrets, supply chain, and access control using 39 tools and 45 checks.
    39
    521
    12
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Agent-native "safe to ship?" security gate for AI-generated code. Uses real parsers and inter-rocedural taint analysis (JS/TS, Python, Go) to flag the classes AI coding agents get wrong — secrets, SQL injection, SS, SSRF, path traversal, command injection, weak JWT/CORS — and ranks findings by confidence. Exposes a scan tool over MCP.
    1
    6
    2
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Local-only GitHub Actions and CI maintenance scanner for AI-built apps. Exposes scan, explanation, and fix-planning tools to MCP clients; modifies nothing and makes no outbound requests by default.
    3
    63
    2
    MIT

View all related MCP servers

Related MCP Connectors

  • GitHub Actions workflow security audit - 21 checks: pinning, permissions, secrets, injection.

  • Scans MCP servers for tool poisoning, prompt injection and supply chain risks.

  • Screens public GitHub repos and PRs to generate risk maps, findings, and merge-readiness signals.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/BerkantACUN/actions-guard-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server