Skip to main content
Glama

CI run failure summary

gh_run_failure_summary
Read-only

Diagnose a GitHub Actions run by returning status, failed jobs and steps, and ##[error] log lines as evidence; defaults to the latest run on the current branch.

Instructions

Diagnose a GitHub Actions run in one call: status, the failed jobs and steps, and the ##[error] lines from the failed log as evidence. Defaults to the latest run on the current branch.

Input Schema

NameRequiredDescriptionDefault
cwdNoRepository path (default: the server's working directory)
runNoRun ID (default: the latest run on `branch`)
branchNoBranch whose latest run to read (default: the current branch)

Output Schema

NameRequiredDescriptionDefault
runYes
urlYes
branchYes
statusYes
evidenceYes
retainedNo
workflowYes
failedJobsYes
likelyCausesYes
suggestedNextCommandsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv5.0.1

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The readOnlyHint annotation already establishes that this is a safe read operation. The description adds useful operational context: it summarizes status, failed jobs/steps, and error evidence, and defaults to the latest run on the current branch. It does not mention authentication or rate limits, but those are secondary here.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two compact sentences, front-loads the primary action, and then adds the key output/default details. Every phrase contributes to understanding the tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema, readOnlyHint, and full parameter descriptions, the definition is largely self-contained. The description covers the purpose and default behavior, though it could mention prerequisites such as an authenticated GitHub CLI for full operational completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents cwd, run, and branch. The description only restates the run/branch default behavior in combined form and does not add syntax or precedence details beyond the schema, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ("Diagnose") and resource ("GitHub Actions run") and enumerates what the summary contains: status, failed jobs and steps, and ##[error] lines. It distinguishes itself from non-GitHub diagnostics by platform, but does not explicitly name sibling alternatives such as gh_pr_checks or glab_pipeline_failure_summary.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for diagnosing a failed Actions run and explains the default target (latest run on current branch), but gives no explicit when-to-use/when-not guidance or alternatives. An agent can infer the context but must still decide on its own when this tool is preferable to siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.