Skip to main content
Glama

skein_comment

Add a comment to an existing issue. The comment is recorded with authorType="agent" so the timeline distinguishes agent-authored notes from human ones. body must be non-empty after trim and at most 100k characters.

The kind parameter (REQUIRED for agent callers) determines the resulting comment's authorKind: kind="directed" → authorKind="agent_directed" (the human user told the agent to post this comment, e.g. "reply to demo-42 with my answer below"); kind="autonomous" → authorKind="agent_autonomous" (the agent posted on its own initiative — handoff note, progress update, side-quest finding). The Humans/Agents filter chips on the comment thread fold human + agent_directed into "Humans" and surface agent_autonomous separately as "Agents". authorType (transport) stays agent regardless of kind.

The response is the created comment MINUS body, plus bodyOmitted:true — every other field of the comment is returned untouched, so this is an omission of one key, not an allowlist. You just supplied the text, and an echoed copy would sit in your context for the rest of the session and be re-sent on every later turn. What that leaves you includes id (for a follow-up skein_comment_update / skein_comment_delete) and version (the expectedVersion token). To read a body back — yours or anyone's — use skein_comment_get (by id) or skein_show (the thread). A write that lost a database serialization race (nothing written) returns serialization_retry — retry the call verbatim.

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": {
      "issueId": "<issueId>",
      "body": "<body>"
    },
    "name": "skein_comment"
  }
}

Input Schema

NameRequiredDescriptionDefault
bodyYesComment body (markdown). Non-empty after trim.
kindNoComment origin classification (REQUIRED for agent callers): "directed" = the human user told the agent to post this comment; "autonomous" = the agent posted on its own initiative (handoff note, progress, side-quest finding). Cookie-session callers ignore this parameter and force authorKind=human; MCP agent callers must specify it.
issueIdYesFull hierarchical issue id (e.g. "demo-42").

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior4/5

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

Goes well beyond the annotations (readOnlyHint=false, destructiveHint=false, idempotentHint=false) by disclosing the agent-attribution side effect, the trim/100k validation limits, the exact response shape (body omitted with bodyOmitted:true) and the serialization_retry race condition with the instruction to retry verbatim. The only gap is that the annotation-level mutation/idempotency semantics are not restated, which is acceptable since annotations cover them.

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 purpose and required-parameter semantics, and most sentences carry operational value. The rationale for omitting `body` from the response is slightly over-explained ('would sit in your context for the rest of the session and be re-sent on every later turn'), but it does justify the surprising response shape.

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?

With no output schema, the description correctly takes on the burden of describing the return payload precisely (all comment fields minus body, plus bodyOmitted:true, plus id and version), and it covers the failure mode. Nothing an agent needs to call this write tool correctly appears to be missing.

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 coverage is 100%, so a 3 would be the baseline, but the description adds real meaning beyond it: it maps `kind` to the resulting `authorKind` (agent_directed vs agent_autonomous) and explains the downstream UI consequence (Humans/Agents filter chips folding human + directed together). It also reinforces that `kind` is mandatory for agent callers and that `body` is trimmed/limited.

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 ('Add a comment to an existing issue') and immediately distinguishes itself from skein_comment_get, skein_comment_update, skein_comment_delete and skein_show, so an agent can separate creation from read/update/delete without opening schemas.

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?

Explicitly encodes the when-to-use decision for `kind`: 'directed' when a human instructed the post vs 'autonomous' for self-initiated notes, with concrete examples of each. It also routes the agent elsewhere for reads ('To read a body back ... use skein_comment_get (by id) or skein_show'), which is genuine alternative-selection 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.