Skip to main content
Glama
WillBrock

Test Reporter MCP Server

by WillBrock

get_flaky_specs

Retrieve flaky test specs from a cached, hourly-refreshed view for quicker flakiness analysis. Returns spec-level data to identify unreliable tests.

Instructions

Get flaky specs from pre-computed materialized view. Faster than get_flaky_tests as it uses cached data refreshed hourly. Returns spec-level flakiness (not individual test level).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum results to return (default: 50)
project_idNoProject ID to filter by (optional)
min_total_runsNoMinimum total runs for statistical significance (default: 1)
min_flaky_countNoMinimum number of flaky occurrences (default: 1)
min_flaky_percentNoMinimum flaky percentage to include (default: 10)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.0.8

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations, the description carries the behavioral burden and delivers important context: the data source (pre-computed materialized view), caching behavior ('refreshed hourly'), and the output granularity (spec-level, not test-level). It doesn't mention pagination, rate limits, or result format, but given no output schema, the disclosed traits are meaningful and non-obvious.

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?

Three sentences with zero waste, front-loading the core purpose and speed rationale. Every clause adds distinct value without redundancy.

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?

For a parameterized query tool with complete schema coverage and no output schema, the description covers the essential context: data source, freshness, and granularity. It omits return structure, but lacks an output schema to define it. The definition is sufficient for correct invocation, missing only secondary details like pagination.

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 all five parameters with types and defaults. The description adds no parameter-level information (e.g., how min_flaky_percent interacts with min_flaky_count). 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.

Purpose5/5

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

The description states a specific verb (Get) and resource (flaky specs), and crucially distinguishes itself from the sibling get_flaky_tests by clarifying the granularity: 'spec-level flakiness (not individual test level)'. This differentiation is exactly what an agent needs to choose between the two sibling tools.

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

Usage Guidelines4/5

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

It explicitly says to use this over get_flaky_tests when speed matters ('Faster than get_flaky_tests'), providing a clear conditional selection rule. However, it doesn't state when NOT to use this tool (e.g., when fresher, non-cached data is required), which prevents a full 5.

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