Skip to main content
Glama

tickets

Destructive

Create, list, board, update, and surface ready work items from a frozen spec, with acceptance criteria, blocked-by links, review flags, and evidence.

Instructions

Manage tickets derived from a frozen spec. Actions: create, list, board, ready, update. Tickets carry acceptance criteria, blocked_by, a requires_review flag, and an evidence slot. ready returns unblocked tickets in deterministic topological order.

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": {
      "action": "<action>"
    },
    "name": "tickets"
  }
}

Input Schema

NameRequiredDescriptionDefault
specNoFrozen spec reference (required for create)
limitNoMax items for list/board/ready (default 50, cap 500)
actionYesTicket action
statusNoNew ticket status (for update)
projectNoProject slug (auto-detected if omitted)
ticketsNoTickets to create (required for create)
ticket_idNoTicket id e.g. ticket-001 (required for update)
workspace_pathNoAbsolute thread workspace directory; must map to this project. Omit only when the server cwd is the thread workspace.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv0.15.1
    • addedInput schema / properties / tickets / items / additionalProperties
      Added value: +false
    • addedInput schema / properties / tickets / items / properties / acceptance / items / additionalProperties
      Added value: +false
    • addedInput schema / properties / workspace_path
      Added value: +{
      +  "description": "Absolute thread workspace directory; must map to this project. Omit only when the server cwd is the thread workspace.",
      +  "type": "string"
      +}
  2. Addedv0.13.0

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true, so the safety bar is partly met structurally. The description adds useful domain behavior (data model fields, evidence slot, deterministic topological ordering for ready) but never explains what makes this destructive or what mutation/authorization semantics apply, which is the key gap for a destructiveHint tool.

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 sentences, front-loaded with purpose then action list then data model then one action's return guarantee; there is very little waste. The middle sentence is somewhat list-like, but overall it is tight and readable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a five-action tool with no output schema, the description should clarify what several actions return or do. It covers the data model and the behavior of ready, but leaves board (grouping?), list, and update opaque, and does not describe return shapes an agent would need to chain calls.

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%, so the schema already documents all eight parameters, including per-field descriptions and enums. The description adds marginal value by naming the ticket data model (acceptance, blocked_by, requires_review, evidence), but adds no syntax or format detail beyond the schema.

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 clear verb ("Manage") and resource ("tickets derived from a frozen spec"), and enumerates the five actions, which lets an agent understand the tool's scope. However, it never differentiates itself from likely-related siblings such as task, spec, or evidence, so an agent must infer the boundary on its own.

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?

The action list implies which operation to pick, and "ready returns unblocked tickets in deterministic topological order" gives real context for one action. But create/list/board/update are named without any statement of when to use them, prerequisites, or exclusions versus alternatives, leaving usage largely implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.