Skip to main content
Glama
workflowlint-mcp
by 0xmortuex

job_graph

Visualizes GitHub Actions job dependencies as text and Mermaid diagrams, groups parallelizable jobs into waves, and reports critical paths, duration bounds, and cycles.

Instructions

Draw each workflow's job needs: graph as text and as a Mermaid diagram, group jobs into waves that can run in parallel, and show the critical path (longest dependency chain) plus a worst-case duration bound from timeout-minutes. Reports cycles.

Input Schema

NameRequiredDescriptionDefault
pathNo.

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.4/5.0
Behavior4/5

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

With no annotations, the description carries the full burden, and it does disclose meaningful behavior: it reports cycles, computes a worst-case duration bound from timeout-minutes, and emits both textual and Mermaid output. It stops short of stating that the operation is read-only and whether it scans all workflow files beneath the given path.

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

Conciseness4/5

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

A single dense sentence front-loads the core action and then lists the derived analyses, with no filler. It is slightly packed but every clause adds a distinct capability.

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

Completeness3/5

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

An output schema exists, so return-value detail is not required, and the description covers the analytical features well. The remaining gap is scope: how `path` selects inputs and whether the tool is read-only, which matters for an agent deciding whether to call it freely.

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

Parameters2/5

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

The single parameter `path` has 0% schema description coverage and defaults to '.', yet the description never mentions it or explains whether it points to a repo root, a workflow directory, or a specific file. With only one parameter and no schema help, the description should compensate and does not.

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?

Uses a specific verb and resource ('Draw each workflow's job `needs:` graph') and enumerates concrete outputs (text, Mermaid diagram, waves, critical path, duration bound, cycle reporting). This is distinct in kind from siblings like lint_workflows or workflows_overview, though no sibling is named explicitly.

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 when the tool is appropriate (dependency/parallelism analysis and visualization), but gives no explicit 'use this instead of X when...' guidance and no exclusions, despite six plausible alternative analysis tools in the sibling list.

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