Skip to main content
Glama

replyToTicket

Destructive

Posts a reply on a ticket. TWO-STEP TOOL: call it WITHOUT confirmationToken first — nothing is sent and you receive a preview plus a confirmationToken. Show the preview to the user; only after the user explicitly approves, call again with the SAME arguments plus the confirmationToken. Tokens are single-use and expire after a few minutes. A normal reply notifies the ticket's audience by email and in-app. Setting internal=true posts a note visible only to managers in Stomio, but it is still synced to connected integrations (Jira, Webex), so it leaves Stomio too. Only open tickets accept new messages; close or reopen a ticket with updateTicketState. To attach a file, upload it first with uploadMedia (target 'ticket') and pass the attachmentId; an attachment is always posted as its own follow-up message (with text and attachment given, TWO messages are posted), and message may be omitted when attachmentId is provided.

Input Schema

NameRequiredDescriptionDefault
messageNoThe reply body (1 to 4096 characters).
internalNoWhen true, posts a manager-only internal note instead of a reply the testers see. Defaults to false.
ticketIdYesID of the ticket, from listTickets or getTicketDetails. Never invent ids.
productIdYesID of the beta project to query. Get valid IDs from the listProducts tool.
attachmentIdNoAttachment handle from uploadMedia (target 'ticket'). Posted as its own image/video/file message after the text (if any).
confirmationTokenNoTwo-step confirmation token. Omit on the first call to receive a preview plus a token; then call again with the SAME arguments plus this token to execute. Single-use and short-lived.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only declare readOnlyHint=false and destructiveHint=true; the description goes far beyond by disclosing that a reply triggers email and in-app notification, that internal notes are still synced to Jira/Webex and thus leave Stomio, that tokens are single-use and short-lived, and that a text+attachment call produces two messages.

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?

Front-loaded with the core action and the two-step protocol, then layered constraints. It is dense and somewhat long, but nearly every clause carries operative information an agent needs; only the 'TWO-STEP TOOL' label is mildly redundant with the sentences that follow.

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 complex, irreversible, externally-visible mutation with six parameters and no output schema, the description covers safety (preview/confirm), side effects (email, Jira/Webex sync), state preconditions, and attachment mechanics. Nothing an agent needs to call it correctly 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 100%, so a 3 is the floor, but the description adds real meaning: the consequences of internal=true (visible to managers yet still synced externally), the attachmentId follow-up-message behavior, and the fact that message may be omitted when an attachment is supplied. It does not add syntax details for ticketId/productId, but those are already well documented.

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?

Opens with a specific verb+resource ('Posts a reply on a ticket') and immediately draws the internal-note vs. public-reply distinction. It is clearly separable from siblings like updateTicket, updateTicketState, and uploadMedia, each of which is named for its own role.

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?

Explicit routing: use updateTicketState to close/reopen, uploadMedia first to attach a file, and set internal=true for manager-only notes. It also states the precondition that only open tickets accept messages and spells out the exact when-to-call sequence for the two-step confirmation.

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