Skip to main content
Glama
FlowState by DialectForge

FlowState by DialectForge

Official

manage_problems

Destructive

Track project bugs and blockers by listing open problems, viewing every attempt and solution, recording tries, and closing issues with the fix that resolved them.

Instructions

Work on a project's existing problems (bugs, blockers). list: open problems. tree: one problem with every attempt and its solution. add_attempt: record a try. end_attempt: how a try ended. solve: close it with what fixed it (manage_history undo reopens it). Open a new problem with log_work kind=problem. Reads: list, tree. Writes need project. Returns problem rows, the tree, or the saved attempt or solution.

Input Schema

NameRequiredDescriptionDefault
modelNoModel name if known. Never guess.
notesNoend_attempt: what you learned.
actionYesThe operation; see the tool description.
compactNolist: shorter rows.
outcomeNoend_attempt: how it ended (required).
projectNoProject name or id. Required for writes; list: omit for all projects.
summaryNosolve: what fixed it (required).
attempt_idNoend_attempt: the attempt's id (from add_attempt or tree).
confidenceNoend_attempt: how sure. Default attempted.
problem_idNotree / add_attempt / solve: the problem's id.
descriptionNoadd_attempt: what you tried (required).
key_insightNosolve: the lesson, one sentence.
code_snippetNosolve: the fix as text. No secrets.
component_idNolist: only this component's problems.
parent_attempt_idNoadd_attempt: an earlier attempt this one builds on.
winning_attempt_idNosolve: the attempt that worked.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv2.4.3
    • changedInput schema / properties / model / description
      Previous value: -"Your model name if you know it. Never guess."New value: +"Model name if known. Never guess."
  2. Addedv2.1.0

TDQS

A4.3/5.0
Behavior4/5

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

Adds real context beyond the annotations: it partitions the actions into reads (list, tree) versus writes that require a project, and discloses reversibility by noting manage_history undo reopens a solved problem. The destructiveHint=true is thus scoped to which actions actually mutate. It stops short of saying what data an end_attempt/solve overwrites or what identifiers are required at call time.

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 purpose, then action-by-action fragments with zero filler; every clause carries information. The telegraphic semicolon style is dense enough that it reads as shorthand rather than prose, which slightly raises parsing effort for an agent.

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?

Covers all five actions, the read/write requirement split, the cross-tool escape hatches, and the return shapes ('problem rows, the tree, or the saved attempt or solution') despite there being no output schema. For a 16-parameter, 5-action, destructive tool it is close to complete; the residual gap is exactly which fields each write action demands at call time.

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 every parameter is already documented including enums and per-action applicability. The description adds only the coarse read/write split ('Writes need project') and the return shapes, not additional meaning for individual fields.

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 the resource (existing problems/bugs/blockers) and then enumerates each action with a concrete verb: list, tree, add_attempt, end_attempt, solve. It explicitly separates itself from log_work (open a new problem) and manage_history (undo reopens), so an agent can pick it apart from siblings without opening 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 Guidelines5/5

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

Gives explicit routing: new problems go to log_work kind=problem, re-opening a solved problem goes through manage_history undo. Each action is paired with its condition of use ('list: open problems', 'tree: one problem with every attempt'), leaving nothing to inference.

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