Skip to main content
Glama

plan_stop

DestructiveIdempotent

Request the plan generation to stop. Pass the plan_id (the UUID returned by plan_create). Stopping is asynchronous: the stop flag is set immediately but the plan may continue briefly before halting. A stopped plan will transition to the stopped state. If the plan is already completed or failed, stop_requested returns false (the plan already finished). Unknown plan_id returns error code PLAN_NOT_FOUND.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
plan_idYesPlan UUID returned by plan_create. Use it to stop the plan creation.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
errorNo
stateNoCurrent plan state after stop request.
stop_requestedNoTrue when stop request flag was set for a pending/processing task.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed1 schema field changed
    • changedOutput schema / properties / state / anyOf
      Previous value: -[
      -  {
      -    "enum": [
      -      "pending",
      -      "processing",
      -      "completed",
      -      "failed"
      -    ],
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "enum": [
      +      "pending",
      +      "processing",
      +      "completed",
      +      "failed",
      +      "stopped"
      +    ],
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  2. Changed4 schema fields changed
    • addedInput schema / properties / plan_id
      Added value: +{
      +  "description": "Plan UUID returned by plan_create. Use it to stop the plan creation.",
      +  "title": "Plan Id",
      +  "type": "string"
      +}
    • removedInput schema / properties / task_id
      Removed value: -{
      -  "description": "Task UUID returned by plan_create. Use it to stop the plan creation.",
      -  "title": "Task Id",
      -  "type": "string"
      -}
    • changedInput schema / required
      Previous value: -[
      -  "task_id"
      -]New value: +[
      +  "plan_id"
      +]
    • changedOutput schema / properties / state / description
      Previous value: -"Current task state after stop request."New value: +"Current plan state after stop request."
  3. Added

TDQS

A4.5/5.0
Behavior5/5

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

The description discloses asynchronous behavior (stop flag set immediately, plan may continue briefly), state transition to 'stopped', return semantics ('stop_requested returns false' for already finished plans), and error handling (PLAN_NOT_FOUND). These go far beyond the annotations, which only indicate destructive and idempotent hints.

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?

The description is four sentences, front-loaded with the core action, and each sentence adds distinct value: usage, async behavior, state transition, and error cases. No redundant content.

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 one parameter, complete schema coverage, annotations, and an output schema, the description covers all necessary context: how to invoke, what to expect, edge cases, and error codes. It is fully sufficient for an agent to use the tool correctly.

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?

The schema description for plan_id already explains it as the UUID returned by plan_create. The tool description mirrors this without adding extra details about format or additional constraints. With 100% schema coverage, a baseline of 3 is appropriate.

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?

The description clearly states the action 'Request the plan generation to stop' with a specific verb and resource. It distinguishes from siblings by focusing on the stop operation, whereas siblings like plan_create, plan_list, and plan_resume handle other phases.

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?

The description provides clear context on when to use the tool: pass the plan_id from plan_create, and notes that already completed/failed plans don't need stopping. It does not explicitly name alternative tools or list when not to use it, but the behavior is well implied.

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.

TDQS

A4.6/5.0
Disambiguation5/5

Each tool has a distinct, non-overlapping purpose within the PlanExe workflow. For example, example_plans and example_prompts serve different preparatory functions, while plan_create, plan_status, plan_stop, plan_resume, and plan_retry handle distinct lifecycle stages of plan generation. No tools appear to duplicate functionality, making selection clear for an agent.

Naming Consistency5/5

Tool names follow a highly consistent verb_noun pattern throughout, with all tools using snake_case and clear action-object pairs (e.g., plan_create, plan_status, plan_stop). The naming is predictable and readable, with no deviations in style or convention across the set.

Tool Count5/5

With 11 tools, the server is well-scoped for its purpose of generating and managing strategic project plans. Each tool serves a specific role in the workflow, from preparation (example_prompts, model_profiles) to creation (plan_create), monitoring (plan_status), lifecycle management (plan_stop, plan_resume, plan_retry), and feedback (send_feedback). The count is appropriate and avoids bloat or gaps.

Completeness5/5

The tool set provides complete coverage for the plan generation domain, including CRUD-like operations (create, list, status, stop, resume, retry) and supporting functions (examples, model selection, file retrieval, feedback). There are no obvious gaps; agents can handle the entire lifecycle from prompt drafting to plan retrieval and error recovery without dead ends.