Skip to main content
Glama

Rename, pause or resume a journey

patch_journey
Idempotent

Rename, pause or resume a journey (permission: edit)

Change name and/or status (paused: no scan of it is scheduled or started from now on, while a replay already queued still runs; active: resume). No re-record and no replay; the baseline is kept. The answer is the journey document with its new ETag. A journey that is not a website journey (or has no test) answers 409 unsupported_target.

etag is sent as If-Match: pass the etag of your last get_journey; on precondition_failed call get_journey again and retry.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "id": "<id>",
      "etag": "<etag>"
    },
    "name": "patch_journey"
  }
}

Input Schema

NameRequiredDescriptionDefault
idYesJourney id: from GET /journeys or the POST /journeys answer.
etagYesThe `etag` returned by get_journey (or by the last write), sent as If-Match.
nameNoNew name.
statusNopaused: no scan of it is scheduled or started from now on (a replay already queued still runs); active: resume.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / id / description
      Added value: +"Journey id: from GET /journeys or the POST /journeys answer."
  2. First observed

TDQS

A4.3/5.0
Behavior5/5

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

Annotations only cover the safety profile (readOnly=false, idempotent=true, destructive=false); the description goes well beyond them. It explains the exact semantics of 'paused' (no new scan scheduled, but an already-queued replay still runs), guarantees no re-record and no replay with the baseline kept, names the response payload (journey document with the new ETag), and documents the 409 error condition.

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?

Two tight paragraphs with the action and permission front-loaded, followed by the concurrency protocol. The only waste is the pause/resume explanation appearing nearly verbatim in both the body and the status property description, but the structure is otherwise efficient.

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 must carry return values, and it does ('The answer is the journey document with its new ETag'). It also covers the failure mode and the retry loop, which is everything an agent needs to invoke this mutation correctly.

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 100%, so the schema already documents all four parameters, and the baseline would be 3. The description still earns credit by explaining etag as a concurrency token tied to a specific recovery workflow (re-fetch via get_journey on precondition_failed) rather than just labeling it as If-Match.

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?

The description opens with a specific verb triplet plus resource ('Rename, pause or resume a journey') and adds the permission gate. An agent can tell this is a partial update rather than a full replace. It never names replace_journey or delete_journey, so the boundary with those close siblings is left to inference.

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 tells the agent exactly which fields are tunable ('Change name and/or status') and gives a concrete concurrency protocol: send the etag from your last get_journey as If-Match, and on precondition_failed call get_journey again and retry. It also states an exclusion case (409 unsupported_target for non-website journeys or journeys without a test). What it lacks is an explicit statement of when to prefer replace_journey or delete_journey instead.

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