Skip to main content
Glama

create_thread

Start an empty persistent peer thread at the project workspace root, inheriting model and permission settings unless overridden, then use its ID with send_message_to_thread to begin work.

Instructions

Create an empty persistent peer thread in this project, at its workspace root. Inherits this thread's model and permission mode unless modelSelection is supplied. Returns its ID; use send_message_to_thread to start work. Does not copy history or create a worktree.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
titleYes
commandIdNo
modelSelectionNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.3

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare non-read-only, non-idempotent, non-destructive behavior, so the bar is lower. The description still adds meaningful traits beyond them: model and permission-mode inheritance (overridable via modelSelection), the fact nothing is copied, and no worktree is created, which counters a plausible agent assumption for a 'thread' tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four short sentences, each carrying distinct information: what is created, what it inherits, what it returns/follows up, and what it deliberately omits. Front-loaded with the creation semantics and no filler.

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?

With no output schema, the description correctly discloses the return value (the thread ID) and covers inheritance, empty-history, and no-worktree behavior. It is nearly complete for a 3-param mutation tool; the only real gap is the unexplained commandId parameter.

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 0% across 3 params including a nested modelSelection object, so the description must carry the load. It does explain the effect of modelSelection (overriding inherited model/permission mode), but says nothing about title beyond the required flag or commandId at all, leaving two parameters unexplained.

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?

States a specific verb and resource ('Create an empty persistent peer thread'), scopes it ('in this project, at its workspace root'), and explicitly distinguishes it from adjacent operations ('Does not copy history or create a worktree'). An agent can place it among list_threads/read_thread/send_message_to_thread without inspecting the schema.

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?

Names the downstream step explicitly ('use send_message_to_thread to start work'), which tells the agent this tool only allocates a thread and a follow-up call is needed. It stops short of stating when NOT to create a thread or what prerequisites/context the project must be in.

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