Skip to main content
Glama

Create or revise a suite

rig.suite.upsert
Idempotent

Create a suite (project_id and slug) or revise one (suite_id) with a definition. Revising stores a new immutable version only when the definition changed; runs already started keep theirs. Free. Use before rig.run.create; do not use to change what a running test observes - add resources or faults to the run instead.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameNo
slugNo
suite_idNoRevise this suite. Leave out to create one; then project_id and slug are required.
definitionYesThe suite definition: {version:1, defaults:{run_ttl}, resources:{name:{type:email|callback|mock_http|connector_route, connector:{route}, route, rules}}, expectations:[{id,resource,event,match}]}. Resource names are lowercase identifiers; route labels lowercase with hyphens.
project_idNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare idempotentHint=true, non-destructive and non-read-only, so the safety profile is covered. The description still adds meaningful behavior: revising stores a new immutable version only when the definition changed, in-flight runs pin their own version, and the operation is free. It does not, however, describe what the call returns or error/validation behavior, so it falls short of a 5.

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 tight sentences with no filler, front-loading the create/revise distinction, then the versioning caveat, then the sequencing and prohibition. Every clause carries information the agent needs.

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 5-parameter upsert with a nested definition object and no output schema, the description covers the operation modes, versioning semantics, cost, and sequencing well. The remaining gap is return/identifier behavior (e.g. what suite_id is produced), which the absent output schema leaves unaddressed.

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 only 40%, so the description must compensate and it partly does: it ties project_id and slug to the create path and suite_id to the revise path, which is semantic meaning not present in the schema. It leaves 'name' unexplained and adds no format detail for definition beyond what the schema already documents.

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?

States a specific verb+resource ('Create a suite ... or revise one') and makes the create-vs-revise selection explicit via the parameter that drives each mode (project_id/slug vs suite_id). This is clearly distinguishable from the read-only siblings rig.suite.get and rig.suite.list.

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

Usage Guidelines5/5

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

Gives concrete when-to-use ('Use before rig.run.create') and an explicit when-not-to-use with the correct alternative ('do not use to change what a running test observes - add resources or faults to the run instead'). The alternative path is named, not merely implied.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources