Skip to main content
Glama

Ticket Write Tool

ticket-write
Destructive

Create or update support tickets. Creation can send an initial client-facing message. Updates can replace assignments, tags and metadata. Sent messages cannot be recalled.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
noteNoTicket note. Empty HTML-only values are stored as an empty string. Max 255 characters.
tagsNoTag IDs or names. Replaces current tags when provided. Prefer tag IDs from tag-read: a numeric name is treated as a tag ID.
orderNoOrder number to associate with the ticket. Pass a number to associate; omit to leave unchanged. Dissociation is not supported via this field.
actionYesAction to perform.
statusNoTicket status ID. Use numeric IDs, not status names.
messageNoOptional first client-facing message to post on the new ticket in the same "create" call. Requires the workspace to be on a paid plan with a configured custom domain; omit it to create the ticket without messaging the client.
subjectNoTicket subject. Max 65535 characters.
user_idNoClient user ID the ticket belongs to. Required for "create".
metadataNoMetadata key/value map. Empty values delete that metadata key.
employeesNoEmployee/staff user IDs to assign, sent with action "update". Replaces the whole assignee list, so include everyone who should stay assigned. Roles limited to self-assignment can only add or remove their own ID. Assignees need ticket access. To find staff IDs by name, use staff-directory with assignable_to "ticket".
ticket_numberNoTicket number. Required when updating an existing record.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / employees / description
      Previous value: -"Employee/staff user IDs to assign, sent with action \"update\". Replaces the whole assignee list, so include everyone who should stay assigned. Roles limited to self-assignment can only add or remove their own ID. Assignees need ticket access."New value: +"Employee/staff user IDs to assign, sent with action \"update\". Replaces the whole assignee list, so include everyone who should stay assigned. Roles limited to self-assignment can only add or remove their own ID. Assignees need ticket access. To find staff IDs by name, use staff-directory with assignable_to \"ticket\"."
    • changedInput schema / properties / tags / description
      Previous value: -"Tag names or IDs. Replaces current tags when provided."New value: +"Tag IDs or names. Replaces current tags when provided. Prefer tag IDs from tag-read: a numeric name is treated as a tag ID."
  2. Changed1 schema field changed
    • changedInput schema / properties / employees / description
      Previous value: -"Employee/staff user IDs to assign. Replaces current assignments when provided."New value: +"Employee/staff user IDs to assign, sent with action \"update\". Replaces the whole assignee list, so include everyone who should stay assigned. Roles limited to self-assignment can only add or remove their own ID. Assignees need ticket access."
  3. First observed

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false; the description adds concrete consequences beyond them: 'Sent messages cannot be recalled' and that updates 'replace' assignments, tags and metadata (full-list overwrite). It stops short of stating permission/auth requirements for the different actions.

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?

Three short sentences, front-loaded with the verb/resource, then mode-specific behavior, then the irreversibility warning. Every sentence carries information; no padding or redundancy.

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?

For an 11-parameter mutation tool with no output schema and full schema coverage, the description supplies the behavioral essentials (action modes, replace semantics, message irreversibility). Missing only auth/permission context and error behavior, which keeps it off a 5.

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 description coverage is 100%, so parameters like ticket_number, user_id, message and employees are already well documented inline. The description only reinforces replace semantics for assignments/tags/metadata, adding marginal value over the schema baseline.

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 specific verbs (create, update) and the resource (support tickets), with the two action modes distinguished up front. It does not name sibling tools like ticket-message-write or ticket-read to sharpen the boundary, so it stops short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Implies usage via the two action modes and notes optional messaging on create, but gives no explicit when-to-use/when-not guidance or alternatives (e.g., use ticket-message-write for follow-up messages). A reader must infer the boundaries from sibling names.

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