Skip to main content
Glama

invalid_progress

Injects one bounded progress-notification fault (unknown token, regressing progress, or after completion) to test MCP client handling of invalid progress updates; requires a client progress token.

Instructions

Send one bounded progress-notification fault for this request; requires a client progress token.

Input Schema

NameRequiredDescriptionDefault
variantYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.13.0

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations, the description carries the full burden and does disclose that the fault is 'one' and 'bounded' — i.e., a single, non-continuous emission — plus the token prerequisite. It does not say what the peer is expected to do in response, whether the fault is terminal for the request, or any side effects, so the behavioral picture is only partial.

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?

A single tight sentence with the action front-loaded and the prerequisite trailing; no filler, nothing redundant, and it is the right length for a one-parameter fault injector.

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?

For a simple fault-injection tool the description covers the core action and precondition, which is close to sufficient. But with no annotations, no output schema, and an unexplained variant enum, the agent still lacks the outcome semantics (what the fault produces, and whether it aborts the request) needed to use it confidently.

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?

There is one enum parameter at 0% schema description coverage, so the description should compensate; instead it explains the prerequisite ('client progress token') but never clarifies what 'unknown-token', 'regressing-progress', or 'after-completion' actually emit. The enum names are fairly self-describing, which keeps this at an adequate-but-incomplete 3.

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?

States a specific verb and resource: 'Send one bounded progress-notification fault for this request.' An agent can tell it is a fault-injection primitive against the progress-notification channel, but the description never names or contrasts itself with siblings such as malformed_message or duplicate_response, which also emit protocol faults.

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?

It gives one useful precondition — 'requires a client progress token' — implying the caller must already have an in-flight request with a token. However, it offers no when/when-not guidance and no routing among the many sibling fault injectors, so selection between them is left to inference from names.

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