Skip to main content
Glama

report_quality_signal

Idempotent

Use this to push a quality signal back to tickadoo about an experience or recommendation you previously surfaced. Examples include stale availability, a failed click-through, a supplier outage, or misleading content. Requires a real forward-event request_id returned within the last 30 days. Send a provisioned bearer credential when feedback authentication is active. Repeating the same signal for the same request is idempotent per caller.

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": {
      "request_id": "<request_id>",
      "signal_type": "<signal_type>"
    },
    "name": "report_quality_signal"
  }
}

Input Schema

NameRequiredDescriptionDefault
notesNoOptional free-text context. Required when signal_type is "other". Do not include PII.
request_idYesThe request_id from a forward tool result in the last 30 days. Current format: rq_YYYY_MM_DD_HHMMSS_<12-hex>; legacy 6-hex ids remain valid.
signal_typeYesThe kind of issue you are reporting. Use "other" only when none of the specific types fit, and always include notes.

Output Schema

NameRequiredDescriptionDefault
detailNo
messageNo
recordedNo
signal_idNo
error_typeNo
recorded_atNo
signal_typeNo
schema_versionNo
referenced_request_idNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": true,
      +  "properties": {
      +    "detail": {
      +      "additionalProperties": true,
      +      "type": "object"
      +    },
      +    "error_type": {
      +      "type": "string"
      +    },
      +    "message": {
      +      "type": "string"
      +    },
      +    "recorded": {
      +      "type": "boolean"
      +    },
      +    "recorded_at": {
      +      "type": "string"
      +    },
      +    "referenced_request_id": {
      +      "type": "string"
      +    },
      +    "schema_version": {
      +      "type": "string"
      +    },
      +    "signal_id": {
      +      "type": "string"
      +    },
      +    "signal_type": {
      +      "type": "string"
      +    }
      +  },
      +  "type": "object"
      +}
  2. Changed2 schema fields changed
    • changedInput schema / properties / request_id / description
      Previous value: -"The request_id from a forward tool result in the last 30 days. Format: rq_YYYY_MM_DD_HHMMSS_<6-hex>."New value: +"The request_id from a forward tool result in the last 30 days. Current format: rq_YYYY_MM_DD_HHMMSS_<12-hex>; legacy 6-hex ids remain valid."
    • changedInput schema / properties / request_id / pattern
      Previous value: -"^rq_\\d{4}_\\d{2}_\\d{2}_\\d{6}_[0-9a-f]{6}$"New value: +"^rq_\\d{4}_\\d{2}_\\d{2}_\\d{6}_(?:[0-9a-f]{6}|[0-9a-f]{12})$"
  3. Changed1 schema field changed
    • changedInput schema / properties / request_id / description
      Previous value: -"The request_id from a prior tool result you are reporting a signal against. Format: rq_YYYY_MM_DD_HHMMSS_<6-hex>."New value: +"The request_id from a forward tool result in the last 30 days. Format: rq_YYYY_MM_DD_HHMMSS_<6-hex>."
  4. Added

TDQS

A4.1/5.0
Behavior4/5

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

Goes beyond the annotations by disclosing the 30-day validity constraint on request_id, the conditional bearer-credential auth requirement, and that repeats are idempotent per caller — a narrower guarantee than the flat idempotentHint=true. It does not describe what happens when the request_id is expired or unknown (rejection vs. silent no-op), leaving one behavioral edge unexplained.

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?

Four short sentences, front-loaded with purpose followed by examples, preconditions, auth, and idempotency. Each carries distinct information; the auth sentence is the only one whose conditional phrasing ('when feedback authentication is active') is slightly vague about how the caller knows it is active.

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?

With 100% schema coverage and an output schema present, the description does not need to explain return values, and it covers the main risks (provenance, age limit, PII, idempotency). The only gap is failure behavior for invalid or expired request_ids, which an agent would want to know before calling.

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?

Schema coverage is 100% and all three parameters are documented in-schema, so the baseline is 3. The description reinforces the request_id provenance and 30-day rule and the notes-when-other rule, but adds little semantics the schema does not already carry.

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: pushing a quality signal back to tickadoo about a previously surfaced experience or recommendation. Concrete examples (stale availability, failed click-through, supplier outage, misleading content) make the intent unambiguous, and nothing in the sibling list of search/discovery tools overlaps with this feedback channel.

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?

Gives clear triggering conditions via the example list and states a hard precondition: the request_id must come from a real forward-event request within 30 days. It does not explicitly say when not to file a signal (e.g. transient errors worth retrying, or issues not tied to a surfaced recommendation), so it stops short of full when/when-not guidance.

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.