Skip to main content
Glama

Set Test Critical

set_test_critical
Destructive

Mark or unmark a test as critical to control if it fails the build when passing only on retry. Requires owner or admin permissions.

Instructions

Call this only when the user asks for it. Mark (critical: true) or unmark (critical: false) a test as critical. A critical test that passes only on retry fails the build; unmarking relaxes that. Owners and admins only. A quarantined test cannot be marked critical, and a project has at most 50 critical tests.

Input Schema

NameRequiredDescriptionDefault
criticalYes
projectIdYesProject ID (e.g. project_<id>)
testcase_idYesPlaywright pw_test_id of the test

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv2.2.0

TDQS

A4.6/5.0
Behavior5/5

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

Beyond the annotations (readOnlyHint=false, destructiveHint=true), the description discloses the consequence of marking (retry-only-passing tests fail the build), the effect of unmarking (relaxes that rule), the required permission level, an eligibility restriction, and a hard quota (max 50 critical tests per project). This is substantive behavioral context the annotations alone do not carry.

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?

Five short sentences, front-loaded with the usage gate and the core action, then the semantics, then permissions and constraints. Every sentence carries information; the phrasing is dense but not padded.

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

Completeness5/5

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

There is no output schema, so the description carries the full burden, and it does: action, value semantics, permissions, preconditions, quota, and the build-failure consequence. Nothing an agent needs in order to call this correctly is missing.

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

Parameters4/5

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

Schema coverage is 67%: projectId and testcase_id are self-documented, but 'critical' has no schema description. The description compensates by spelling out the boolean semantics ('critical: true' marks, 'critical: false' unmarks), which the schema does not. That meaningfully exceeds the baseline for the documented parameters.

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 names a specific verb and resource ('mark or unmark a test as critical') and explains the domain meaning of 'critical' (a test that passes only on retry fails the build). It also implicitly distinguishes itself from quarantine siblings by stating a quarantined test cannot be marked critical. An agent can tell exactly what this toggles.

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 gives an explicit gating instruction ('call this only when the user asks for it') plus prerequisites (owners/admins only) and an exclusion (quarantined tests cannot be marked). No alternative tool is named for related operations such as viewing or bulk-managing critical tests, so it lacks the full when/when-not/alternatives coverage a 5 requires.

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