Skip to main content
Glama

Ignore a dataLayer element journey-wide

ignore_datalayer_element

Ignore a dataLayer element journey-wide (permission: edit)

Suppress an element (by elementKey + diffType) across every step of the journey. The diff engine filters covered elements out before inserting, so future scans stop reporting them. Ignoring the same element again updates its decision. Answers 201 with the Decision (remove it with DELETE …/ignores/{decisionId}). idempotencyKey (sent as the Idempotency-Key header): retrying the same call with the same value replays the original answer; the same value with different arguments is 422 idempotency_conflict, and 409 idempotent_in_progress means wait error.meta.retryAfter seconds 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>",
      "elementKey": "<elementKey>",
      "diffType": "<diffType>"
    },
    "name": "ignore_datalayer_element"
  }
}

Input Schema

NameRequiredDescriptionDefault
idYesJourney id: from GET /journeys or the POST /journeys answer.
diffTypeYesThe diff's diffType; only these types can be ignored: missing_event, extra_event, missing_param, extra_param, param_type_changed, event_drifted, consent_value_changed.
elementKeyYesThe element to ignore on every step: a diff's elementKey, from GET /scans/{id}?include=diffs.
idempotencyKeyNoOptional Idempotency-Key: reuse the same value when retrying this exact call so it is applied once.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedInput schema / properties / diffType / description
      Added value: +"The diff's diffType; only these types can be ignored: missing_event, extra_event, missing_param, extra_param, param_type_changed, event_drifted, consent_value_changed."
    • addedInput schema / properties / elementKey / description
      Added value: +"The element to ignore on every step: a diff's elementKey, from GET /scans/{id}?include=diffs."
    • addedInput schema / properties / id / description
      Added value: +"Journey id: from GET /journeys or the POST /journeys answer."
  2. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the annotations it discloses the permission needed (edit), the downstream effect (the diff engine filters covered elements before inserting, so future scans stop reporting them), the 201 response shape (a Decision), and error semantics: 422 idempotency_conflict and 409 idempotent_in_progress with error.meta.retryAfter. The idempotencyKey replay behavior is described precisely enough to avoid duplicate decisions, which is not visible from idempotentHint=false alone.

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?

The title line and first sentence are front-loaded with the action, scope, and permission; subsequent sentences each carry distinct payload (repeat-call behavior, response code, idempotency rules). Dense but every clause earns its place for a mutation tool with non-obvious retry semantics.

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?

For a 4-parameter mutation with no output schema, the description covers success code, returned object, undo path, permission requirement, conflict codes, and retry delay. Nothing an agent needs to invoke it safely and handle failures 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 already 100%, so the baseline is 3; the description still adds value by explaining that idempotencyKey is transmitted as the Idempotency-Key header and how its value must match across retries. It also frames elementKey/diffType as the pair that identifies the decision, though it doesn't elaborate on the enum values beyond the schema.

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 gives a specific verb (suppress/ignore) plus resource (dataLayer element) and explicit scope: 'across every step of the journey', keyed by elementKey + diffType. It also names its own undo path (DELETE …/ignores/{decisionId}), which separates it from delete_datalayer_ignore and from the approve_* siblings.

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 states when to use it (suppress an element journey-wide so future scans stop reporting it) and what happens on repeat calls ('Ignoring the same element again updates its decision'), plus the removal route. It does not explicitly contrast with approve_datalayer_diff / approve_all_datalayer_diffs, so the agent must infer the boundary between approving and ignoring.

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