Automation Coverage MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| FOREST_ROOT | No | Absolute path of the folder that contains the workspace clones (rhdh-plugins, rhdh, overlays, etc.). Used for ${FOREST_ROOT} expansion in YAML paths. | |
| AUTOMATION_COVERAGE_CONFIG | No | Absolute path to a YAML configuration file. Overrides the default config lookup order. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_layersA | List pluggable test layers (unit, integration, component, UI/Playwright, smoke, cluster). Custom YAML layers are merged in. |
| discover_packagesA | Discover plugin packages at every level of the RHDH forest (workspaces//plugins/, rhdh plugins, overlay e2e, shared Playwright helpers). |
| analyze_changesB | Parse git diff (branch vs base plus uncommitted) and classify each file into a plugin package and file kind. |
| get_coverageB | Parse Istanbul JSON or LCOV coverage from a package or workspace. Returns per-file percents and uncovered line numbers. |
| coverage_gapsA | Intersect git-changed lines with uncovered lines from Istanbul/LCOV. Use this before generating tests. |
| inventory_testsA | List existing tests for a package at one layer (or all layers). Used to find a template to mirror. |
| recommend_automationB | Given current git changes and coverage numbers, recommend the cheapest test layers and whether Playwright MCP is required. |
| generate_test_planB | Produce a complete, ordered plan: per-gap briefs for unit/integration/component plus Playwright MCP prompts for UI layers. Agents should execute every work item. |
| generate_layer_briefC | Generate a single-layer implementation brief (unit, integration, component, smoke, or a custom YAML layer). |
| generate_playwright_briefA | Generate the explore-then-write prompt for Playwright MCP from UI coverage gaps. Pair with the playwright MCP server (--caps=testing). Do not write spec code until you have used browser_* tools. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| fill_automation_gaps | Orchestrate change analysis, coverage gaps, and generation of every appropriate test layer, using Playwright MCP for UI. |
| playwright_from_coverage | Use Playwright MCP to explore uncovered UI and write durable e2e specs. Requires @playwright/mcp with --caps=testing. |
| unit_from_coverage | Generate Jest/RTL/startTestBackend tests for uncovered changed lines. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| layers | Currently configured pluggable test layers |
| principles |
TDQS
Scored across 10 tools
Most tools map to distinct pipeline phases: discovery, diff analysis, coverage extraction, gap intersection, inventory, recommendation, and brief generation. The main ambiguity is among generate_test_plan, generate_layer_brief, and generate_playwright_brief, but their descriptions clarify scope.
Tool names mostly follow a consistent snake_case verb-first pattern such as list_layers, discover_packages, analyze_changes, and generate_test_plan. The exception is coverage_gaps, a noun phrase rather than an imperative verb, which creates a minor inconsistency.
With 10 tools, the server is well-scoped for its purpose: discovery, analysis, coverage gap detection, planning, and brief generation. Each tool corresponds to a meaningful step in the workflow, and none feel redundant.
The tool surface covers the full pipeline from listing layers and discovering packages, through analyzing changes and coverage gaps, to recommending and generating test plans and layer-specific briefs. There are no obvious dead ends or missing operations for the stated purpose.