GitHub Actions MCP
Server Quality Checklist
Latest release: v0.1.0
- Disambiguation5/5
Every tool has a clearly distinct purpose targeting specific GitHub Actions operations. Tools like gha_cancel_run, gha_rerun_workflow, and gha_trigger_workflow handle different workflow lifecycle stages, while gha_get_run, gha_get_run_logs, and gha_diagnose_failure provide distinct types of run information. There is no functional overlap that would cause agent confusion.
Naming Consistency5/5All tools follow a perfect gha_verb_noun naming pattern with consistent snake_case throughout. The prefix 'gha_' clearly identifies the domain, and verbs like 'cancel', 'get', 'list', 'rerun', 'set', and 'trigger' are consistently applied to appropriate nouns like 'run', 'workflow', and 'logs'.
Tool Count5/5With 10 tools, this server is well-scoped for GitHub Actions management. The count covers core operations without bloat, including workflow listing/management, run monitoring/control, and diagnostic capabilities. Each tool earns its place in providing a complete surface for the domain.
Completeness5/5The toolset provides complete lifecycle coverage for GitHub Actions workflows. It includes discovery (list_workflows, list_runs), inspection (get_workflow, get_run, get_run_logs), control (trigger_workflow, rerun_workflow, cancel_run, set_workflow_state), and diagnostics (diagnose_failure). No obvious gaps exist for the stated purpose.
Average 2.9/5 across 10 of 10 tools scored.
See the Tool Scores section below for per-tool breakdowns.
Add a LICENSE file by following GitHub's guide. Once GitHub recognizes the license, the system will automatically detect it within a few hours.
If the license does not appear after some time, you can manually trigger a new scan using the MCP server admin interface.
MCP servers without a LICENSE cannot be installed.
This repository includes a README.md file.
No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.
Tip: use the "Try in Browser" feature on the server page to seed initial usage.
Add a glama.json file to provide metadata about your server.
If you are the author, simply .
If the server belongs to an organization, first add
glama.jsonto the root of your repository:{ "$schema": "https://glama.ai/mcp/schemas/server.json", "maintainers": [ "your-github-username" ] }Then . Browse examples.
Add related servers to improve discoverability.
How to sync the server with GitHub?
Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.
To manually sync the server, click the "Sync Server" button in the MCP server admin interface.
How is the quality score calculated?
The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).
Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.
Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).
Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.
Tool Scores
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden but offers minimal behavioral insight. It implies a mutation (re-running) but doesn't disclose permissions needed, rate limits, whether it's idempotent, or what happens to the original run. For a tool that likely modifies system state, this is inadequate transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with a single phrase ('Re-run a workflow'), front-loading the core action without unnecessary words. Every word earns its place, making it efficient for quick comprehension.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and a mutation tool with behavioral implications, the description is incomplete. It doesn't cover return values, error conditions, or critical context like authentication needs or side effects. For a tool that re-runs workflows, more detail is warranted.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameters are well-documented in the schema. The description adds no additional meaning beyond implying 'workflow' relates to 'run_id' and 'repo'. Baseline 3 is appropriate as the schema handles parameter semantics effectively.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose3/5Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Re-run a workflow' states the basic action but lacks specificity. It mentions the verb ('Re-run') and resource ('workflow'), but doesn't distinguish it from siblings like 'gha_trigger_workflow' (which creates new runs) or 'gha_cancel_run' (which stops runs). The purpose is clear but generic.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing an existing workflow run), exclusions, or comparisons to siblings like 'gha_diagnose_failure' (for analysis) or 'gha_trigger_workflow' (for new runs). Usage is implied but not articulated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. 'Cancel a running workflow' implies a destructive mutation, but it doesn't specify permissions required, whether cancellation is reversible, rate limits, error conditions, or what happens to the workflow after cancellation. This is inadequate for a mutation tool with zero annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero wasted words. It's front-loaded with the core action and target, making it immediately understandable without unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive mutation tool with no annotations and no output schema, the description is incomplete. It lacks critical context like required permissions, side effects, error handling, and return values. Given the complexity of canceling workflows and the absence of structured behavioral data, more detail is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters ('repo' and 'run_id') clearly documented in the schema. The description adds no additional parameter information beyond what the schema provides, such as format examples or constraints. Baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Cancel') and target ('a running workflow'), providing a specific verb+resource combination. However, it doesn't explicitly differentiate from sibling tools like 'gha_set_workflow_state' (which might also affect workflow state) or 'gha_rerun_workflow' (which might involve similar workflow manipulation).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., the workflow must be running), exclusions (e.g., cannot cancel completed workflows), or when to choose siblings like 'gha_rerun_workflow' (for restarting) or 'gha_set_workflow_state' (for other state changes).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool retrieves 'detailed run information including jobs,' which implies a read-only operation, but doesn't clarify permissions, rate limits, error handling, or response format. For a tool with no annotations, this is insufficient to inform the agent adequately.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence: 'Get detailed run information including jobs.' It is front-loaded with the core purpose and avoids unnecessary words, making it easy for an agent to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (fetching run details in a GitHub Actions context), no annotations, and no output schema, the description is incomplete. It lacks information on return values, error cases, or behavioral nuances, which are critical for an agent to use the tool effectively in a real-world scenario.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters (repo, run_id, include_jobs) with clear descriptions. The description adds no additional semantic context beyond implying that 'run information' includes jobs, which aligns with the include_jobs parameter. This meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get detailed run information including jobs.' It specifies the verb ('Get') and resource ('run information'), and distinguishes it from siblings like gha_list_runs (which lists multiple runs) and gha_get_run_logs (which focuses on logs). However, it doesn't explicitly differentiate from gha_diagnose_failure or gha_get_workflow, which slightly limits clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention siblings like gha_list_runs for listing runs or gha_get_workflow for workflow-level details, nor does it specify prerequisites or contexts for usage. This leaves the agent without explicit direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure but offers minimal information. It states the tool fetches logs but doesn't describe what 'logs' include (e.g., console output, timestamps), whether it's a read-only operation, potential rate limits, authentication needs, or the format of the returned data. This leaves significant gaps for an agent to understand how the tool behaves beyond basic functionality.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence ('Fetch logs for a workflow run') that front-loads the core purpose without unnecessary words. It avoids redundancy and wastes no space, making it easy for an agent to parse quickly. Every word earns its place by directly conveying the tool's function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of a tool with 5 parameters, no annotations, and no output schema, the description is insufficiently complete. It doesn't address key contextual aspects like what the logs contain, how they are structured, whether the operation is safe (read-only), or any error conditions. For a tool that fetches potentially large data sets, more guidance on behavior and output is needed to help an agent use it effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with all parameters clearly documented (e.g., 'repo' as 'Repository in owner/repo format', 'run_id' as 'Workflow run ID'). The description adds no additional meaning beyond the schema, such as explaining how parameters interact (e.g., 'grep' filters within fetched logs) or providing examples. Since schema coverage is high, the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Fetch logs for a workflow run' clearly states the action ('fetch logs') and resource ('workflow run'), making the purpose immediately understandable. It distinguishes from siblings like gha_get_run (which retrieves run metadata) or gha_diagnose_failure (which analyzes failures), but doesn't explicitly mention this differentiation in the description itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing a valid run_id), when to use it over gha_diagnose_failure for debugging, or any constraints like authentication requirements or rate limits. The agent must infer usage from the tool name and parameters alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states 'Get workflow definition and metadata', which implies a read-only operation, but doesn't specify whether it requires authentication, returns paginated results, includes error handling, or details the metadata structure. For a tool with no annotations, this is insufficient to inform the agent about key behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with a single, direct sentence: 'Get workflow definition and metadata'. It is front-loaded and wastes no words, making it easy to parse quickly. Every word earns its place by conveying the core purpose without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of GitHub Actions workflows and the lack of annotations and output schema, the description is incomplete. It doesn't explain what 'definition and metadata' includes, potential response formats, or error conditions. For a tool that likely returns structured data about workflows, more context is needed to help the agent understand the output and usage fully.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with clear documentation for both parameters ('repo' and 'workflow'). The description doesn't add any semantic details beyond what the schema provides, such as examples or constraints. Since the schema coverage is high, a baseline score of 3 is appropriate, as the description doesn't compensate but also doesn't detract.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and the target resource ('workflow definition and metadata'), making the purpose understandable. However, it doesn't differentiate this tool from its sibling 'gha_list_workflows' (which lists workflows) or 'gha_get_run' (which gets run details), missing an opportunity for precise distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. Given siblings like 'gha_list_workflows' (for listing workflows) and 'gha_get_run' (for getting run details), there's no indication of the specific context or prerequisites for selecting this tool, leaving the agent to infer usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. While 'List' implies a read operation, it doesn't mention whether this requires authentication, rate limits, pagination behavior, or what the output format looks like. The description is too minimal to adequately inform the agent about how this tool behaves beyond the basic action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise at just 5 words, front-loading the core purpose without any wasted words. Every element ('List', 'workflow runs', 'with filtering') earns its place by conveying essential information efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 6 parameters, no annotations, and no output schema, the description is insufficiently complete. It doesn't explain what a 'workflow run' is in this context, what the output contains, or important behavioral aspects like authentication requirements or result ordering. The agent would need to guess too much about how to properly use this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description mentions 'with filtering' which hints at the purpose of the parameters, but doesn't add meaningful semantic context beyond what the schema provides. With 67% schema description coverage (4 of 6 parameters have descriptions), the baseline is 3. The description doesn't compensate for the undocumented parameters (status and conclusion have no schema descriptions) or explain parameter interactions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List workflow runs with filtering' clearly states the verb ('List') and resource ('workflow runs'), and specifies the filtering capability. However, it doesn't distinguish this tool from its sibling 'gha_list_workflows' which lists workflows rather than runs, leaving some ambiguity about the exact scope differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'gha_get_run' (for a single run) or 'gha_list_workflows' (for workflows rather than runs). It mentions filtering but doesn't specify when filtering is appropriate or what the default behavior might be without filters.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden for behavioral disclosure. While 'enable or disable' implies a mutation operation, it doesn't specify permissions required, whether changes are reversible, rate limits, or what happens to in-progress runs when disabled. For a mutation tool with zero annotation coverage, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero wasted words. It's front-loaded with the core functionality and appropriately sized for a tool with clear parameters documented elsewhere.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no annotations and no output schema, the description is insufficient. It doesn't explain what 'enabling' or 'disabling' actually means in context (e.g., does it affect scheduled triggers? existing runs?), what permissions are needed, or what the response contains. This leaves critical gaps for an agent to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with clear parameter documentation in the schema itself. The description adds no additional parameter information beyond what's already in the schema (repo format, workflow identifier, boolean enable/disable). This meets the baseline expectation when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Enable or disable a workflow' clearly states the action (enable/disable) and resource (workflow), making the purpose immediately understandable. However, it doesn't distinguish this tool from its siblings like 'gha_trigger_workflow' or 'gha_cancel_run' which also affect workflow states, leaving room for confusion about when to use each.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With siblings like 'gha_trigger_workflow' (initiates execution) and 'gha_cancel_run' (stops execution), there's no indication that this tool is for toggling the active/inactive state of a workflow definition rather than controlling execution. This omission could lead to misuse.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the action ('trigger') but doesn't describe key behavioral traits such as authentication requirements, rate limits, whether the trigger is synchronous or asynchronous, what happens on success/failure, or any side effects. This is a significant gap for a mutation tool with zero annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence ('Trigger a workflow_dispatch event') that is front-loaded and wastes no words. It directly conveys the core purpose without unnecessary elaboration, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of triggering a workflow (a mutation operation with potential side effects), no annotations, no output schema, and the description's minimal content, it is incomplete. The agent lacks crucial information about behavior, return values, error handling, and usage context, which are essential for safe and effective tool invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, so the schema already documents all four parameters (repo, workflow, ref, inputs) with clear descriptions. The description adds no additional meaning beyond what the schema provides, such as examples or constraints not in the schema. Baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Trigger a workflow_dispatch event' clearly states the action (trigger) and the resource (workflow_dispatch event), which is specific and unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'gha_rerun_workflow' or 'gha_set_workflow_state', which also involve workflow execution control, so it doesn't reach the highest score for sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, context (e.g., when a workflow_dispatch is appropriate vs. automated triggers), or exclusions, leaving the agent to infer usage from the tool name and schema alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states it's a list operation, implying it's likely read-only and non-destructive, but doesn't confirm this or add any context about permissions, rate limits, pagination, or response format. For a tool with zero annotation coverage, this is a significant gap in describing how the tool behaves beyond its basic function.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero waste: 'List workflows in a repository'. It's front-loaded with the core action and resource, making it easy to parse. Every word earns its place, and there's no unnecessary elaboration or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (2 parameters, no nested objects) and 100% schema coverage, the description is minimally adequate. However, with no annotations and no output schema, it lacks context on behavioral traits like safety, permissions, or return values. For a list operation, this is a moderate gap, but the simplicity of the tool keeps it from being severely incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters (repo and state) fully documented in the schema. The description doesn't add any meaning beyond what the schema provides, such as explaining the format of 'owner/repo' or the implications of the state filter. Since the schema does the heavy lifting, the baseline score of 3 is appropriate, as the description doesn't compensate but also doesn't detract.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List workflows in a repository' clearly states the action (list) and resource (workflows), with the scope (in a repository) specified. It distinguishes from siblings like gha_get_workflow (retrieve a single workflow) and gha_list_runs (list runs, not workflows), but doesn't explicitly contrast with gha_set_workflow_state or gha_trigger_workflow, which are different operations. The purpose is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention siblings like gha_get_workflow for retrieving a specific workflow or gha_list_runs for listing runs instead of workflows. There's no context on prerequisites, such as needing repository access, or exclusions, leaving the agent to infer usage from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. While 'analyze' and 'diagnosis' suggest this is a read-only analysis tool, it doesn't clarify whether this performs any mutations, what permissions are required, what format the analysis returns, or whether it has rate limits. The optional AI diagnosis mention adds some context but lacks specifics about what this entails.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise at just 8 words, front-loading the core purpose ('Analyze a failed workflow run') with the optional feature ('with optional AI diagnosis') as a secondary note. Every word earns its place with zero redundancy or unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a diagnostic tool with no annotations and no output schema, the description is insufficient. It doesn't explain what 'analyze' actually produces - whether it's a summary, root cause analysis, suggested fixes, or just aggregated logs. The 'optional AI diagnosis' is mentioned but undefined. Given the complexity of workflow failure analysis and lack of structured output documentation, this leaves significant gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with both parameters well-documented in the schema. The description doesn't add any parameter-specific information beyond what's already in the schema (repo format, run_id type). This meets the baseline 3 score since the schema does the heavy lifting for parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Analyze a failed workflow run' with the specific action 'analyze' and resource 'failed workflow run'. It distinguishes itself from siblings like gha_get_run (which fetches run details) or gha_get_run_logs (which retrieves logs) by focusing on diagnosis/analysis rather than basic data retrieval. However, it doesn't explicitly mention GitHub Actions context or differentiate from all siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context through 'failed workflow run' - suggesting this tool should be used specifically when a workflow has failed. However, it doesn't provide explicit guidance on when to use this versus alternatives like gha_get_run (for general run info) or gha_get_run_logs (for raw logs). No when-not-to-use guidance or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
GitHub Badge
Glama performs regular codebase and documentation scans to:
- Confirm that the MCP server is working as expected.
- Confirm that there are no obvious security issues.
- Evaluate tool definition quality.
Our badge communicates server capabilities, safety, and installation instructions.
Card Badge
Copy to your README.md:
Score Badge
Copy to your README.md:
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/ArkTechNWA/github-actions-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server