Skip to main content
Glama

wals.pro AI 4 weclapp

Preview support escalation

preview_escalate_to_support
Read-onlyIdempotent

Preview a customer-confirmed platform or partner ticket and issue an approval token.

when_to_use: Support ticket or feedback report for the user to review and confirm. Show the full preview and resolved support destination; get explicit consent first. Ask for missing facts; never invent. Tried steps are required, never optional. Own words only: no copied chat text, personal data or credentials. Server redaction applies; preview shows exactly what is sent. kind="chat_review": this assistant's own behaviour, reviewed by the wals.pro team; only description (summary, max 500), category, contact_email, chat_review. Args: kind: support (default) | chat_review. title: Max 120 chars. description: Expected vs. actual; support ≤2000 chars. category: support bug|feature_gap|how_to|data_issue|other; chat_review bug|hallucination|tool_misuse|safety|other. responsible_person: Case owner. contact_email: Problem contact (replies: verified contact). occurred_at: ISO 8601 as stated; never invented. steps_already_tried: 1–10 concrete attempts. example_records: Max 10 {entity_name, entity_id, note}. weclapp_url: https link on this workspace's host. hypotheses: Max 5 causes. problem_scope: platform | customer_erp | unclear; recommend, customer decides. support_target: platform | partner; resolved server-side, no free destination. chat_review: {tool_calls_of_interest?}, max 10 {tool, note}. preconditions: support needs title, responsible_person, contact_email, occurred_at, steps_already_tried. Max 10 per day. post_effects: Token only; after the user explicitly confirms: execute_approved(approval.token, execution.payload).

Input Schema

NameRequiredDescriptionDefault
kindNosupport
titleNo
categoryYes
hypothesesNo
chat_reviewNo
descriptionYes
occurred_atNo
weclapp_urlNo
contact_emailNo
problem_scopeNo
correlation_idNo
support_targetNo
example_recordsNo
responsible_personNo
steps_already_triedNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changed
    • addedInput schema / $defs
      Added value: +{
      +  "ChatReviewInput": {
      +    "additionalProperties": false,
      +    "description": "``chat_review={...}`` for ``kind=\"chat_review\"``; there is no transcript field.",
      +    "properties": {
      +      "tool_calls_of_interest": {
      +        "items": {
      +          "$ref": "#/$defs/ToolCallOfInterestInput"
      +        },
      +        "maxItems": 10,
      +        "title": "Tool Calls Of Interest",
      +        "type": "array"
      +      }
      +    },
      +    "title": "ChatReviewInput",
      +    "type": "object"
      +  },
      +  "ExampleRecordInput": {
      +    "additionalProperties": false,
      +    "description": "One affected record: entity name and id, optionally a short note.",
      +    "properties": {
      +      "entity_id": {
      +        "maxLength": 40,
      +        "title": "Entity Id",
      +        "type": "string"
      +      },
      +      "entity_name": {
      +        "maxLength": 60,
      +        "title": "Entity Name",
      +        "type": "string"
      +      },
      +      "note": {
      +        "maxLength": 200,
      +        "title": "Note",
      +        "type": "string"
      +      }
      +    },
      +    "title": "ExampleRecordInput",
      +    "type": "object"
      +  },
      +  "ToolCallOfInterestInput": {
      +    "additionalProperties": false,
      +    "description": "One tool call the review should look at.",
      +    "properties": {
      +      "note": {
      +        "maxLength": 200,
      +        "title": "Note",
      +        "type": "string"
      +      },
      +      "tool": {
      +        "maxLength": 80,
      +        "title": "Tool",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "tool"
      +    ],
      +    "title": "ToolCallOfInterestInput",
      +    "type": "object"
      +  }
      +}
    • changedInput schema / properties / chat_review / anyOf
      Previous value: -[
      -  {
      -    "additionalProperties": true,
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "$ref": "#/$defs/ChatReviewInput"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedInput schema / properties / chat_review / title
      Removed value: -"Chat Review"
    • changedInput schema / properties / example_records / anyOf
      Previous value: -[
      -  {
      -    "items": {
      -      "anyOf": [
      -        {
      -          "additionalProperties": {
      -            "type": "string"
      -          },
      -          "type": "object"
      -        },
      -        {
      -          "type": "string"
      -        }
      -      ]
      -    },
      -    "type": "array"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "items": {
      +      "$ref": "#/$defs/ExampleRecordInput"
      +    },
      +    "maxItems": 10,
      +    "type": "array"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  2. Changed2 schema fields changed
    • addedInput schema / properties / problem_scope
      Added value: +{
      +  "anyOf": [
      +    {
      +      "enum": [
      +        "platform",
      +        "customer_erp",
      +        "unclear"
      +      ],
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Problem Scope"
      +}
    • addedInput schema / properties / support_target
      Added value: +{
      +  "anyOf": [
      +    {
      +      "enum": [
      +        "platform",
      +        "partner"
      +      ],
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Support Target"
      +}
  3. Changed20 schema fields changed
    • changedInput schema / properties / category / enum
      Previous value: -[
      -  "bug",
      -  "feature_gap",
      -  "how_to",
      -  "data_issue",
      -  "other"
      -]New value: +[
      +  "bug",
      +  "feature_gap",
      +  "how_to",
      +  "data_issue",
      +  "other",
      +  "hallucination",
      +  "tool_misuse",
      +  "safety"
      +]
    • addedInput schema / properties / chat_review
      Added value: +{
      +  "anyOf": [
      +    {
      +      "additionalProperties": true,
      +      "type": "object"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Chat Review"
      +}
    • addedInput schema / properties / contact_email / anyOf
      Added value: +[
      +  {
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / contact_email / default
      Added value: +null
    • removedInput schema / properties / contact_email / type
      Removed value: -"string"
    • addedInput schema / properties / kind
      Added value: +{
      +  "default": "support",
      +  "enum": [
      +    "support",
      +    "chat_review"
      +  ],
      +  "title": "Kind",
      +  "type": "string"
      +}
    • addedInput schema / properties / occurred_at / anyOf
      Added value: +[
      +  {
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / occurred_at / default
      Added value: +null
    • removedInput schema / properties / occurred_at / type
      Removed value: -"string"
    • addedInput schema / properties / responsible_person / anyOf
      Added value: +[
      +  {
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / responsible_person / default
      Added value: +null
    • removedInput schema / properties / responsible_person / type
      Removed value: -"string"
    • addedInput schema / properties / steps_already_tried / anyOf
      Added value: +[
      +  {
      +    "items": {
      +      "type": "string"
      +    },
      +    "type": "array"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / steps_already_tried / default
      Added value: +null
    • removedInput schema / properties / steps_already_tried / items
      Removed value: -{
      -  "type": "string"
      -}
    • removedInput schema / properties / steps_already_tried / type
      Removed value: -"array"
    • addedInput schema / properties / title / anyOf
      Added value: +[
      +  {
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / title / default
      Added value: +null
    • removedInput schema / properties / title / type
      Removed value: -"string"
    • changedInput schema / required
      Previous value: -[
      -  "title",
      -  "description",
      -  "category",
      -  "responsible_person",
      -  "contact_email",
      -  "occurred_at",
      -  "steps_already_tried"
      -]New value: +[
      +  "description",
      +  "category"
      +]
  4. First observed

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive, open-world), so the bar is lower, yet the description adds substantial context beyond them: server-side redaction applies, the preview shows exactly what is sent, a rate limit of max 10 per day, preconditions, and the post-effect that only a token is produced until the user confirms execute_approved(approval.token, execution.payload).

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?

It is long but organized into labeled sections (purpose, when_to_use, Args, preconditions, post_effects) with the core purpose front-loaded. Nearly every sentence carries substantive guidance, though the density means some lines could be trimmed without losing meaning.

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 15-parameter preview tool with an output schema, the description is complete: it covers purpose, usage conditions, every argument, preconditions (required fields and daily cap), and the follow-up execution path. Return-value details are correctly left to the output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across 15 parameters, so the description carries the full burden and does so: it documents each argument's meaning and constraints (title max 120, description limits, category enums split by kind, contact_email as the verified reply contact, occurred_at never invented, steps 1–10, example_records max 10, weclapp_url host restriction, problem_scope 'customer decides', support_target 'resolved server-side').

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+resource ('Preview a customer-confirmed platform or partner ticket') plus its secondary effect (issue an approval token), which is far more than the name alone conveys. It is distinguishable from the preview_write_* / preview_entity_action siblings by the ticket resource, though it never explicitly names an alternative.

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?

The when_to_use block gives clear context: user-confirmed support ticket or feedback report, show the full preview and resolved destination, obtain explicit consent first, ask for missing facts rather than inventing. It states conditions well but does not contrast against the sibling preview tools or spell out when NOT to use this one.

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