Skip to main content
Glama
rillsoft

Rillsoft Project MCP server

Official

Delete subproject

rillsoft_subproject_delete
Destructive

Deletes a subproject and all contained elements by UUID. Use it to remove subprojects, not tasks or the main project.

Instructions

Deletes a subproject together with everything inside it. Refused where the UUID names a task - rillsoft_task_delete does that one, and rillsoft_element_delete takes either kind. The main project cannot be deleted; use rillsoft_project_create for a fresh one. Creating goes through rillsoft_subproject_create, changing through rillsoft_subproject_update. One undo step.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
uuidYesUUID of the subproject

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
deletedYesUUID of the subproject that was deleted

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv10.0.626

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the mutation is known. The description adds meaningful context beyond that: the delete is cascading ('everything inside it'), refused for task UUIDs, and the main project is protected. The 'One undo step' line discloses reversibility, which annotations do not cover. It could have mentioned permission or confirmation requirements, but the coverage is strong.

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 sentences, zero waste. The cascade scope is front-loaded, the sibling routing follows, and the undo note closes it. Every sentence carries a distinct operational fact.

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?

Given a destructive single-parameter tool with annotations and an output schema, this description covers the critical unknowns: what gets destroyed (whole subtree), what is refused (task UUIDs), what is protected (main project), which siblings handle adjacent cases, and reversibility (one undo step). Nothing an agent needs to act safely is missing.

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% and there is only one parameter (uuid), so schema already fully documents the input. The description adds no parameter-level detail (e.g., format of UUID, whether it must be a subproject UUID vs task UUID – though the refusal clause implies it). Baseline 3 for full schema coverage with minimal added semantics.

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 (delete subproject) and immediately clarifies the cascading scope ('together with everything inside it') and what cannot be deleted (the main project). It distinguishes itself from sibling delete tools (rillsoft_task_delete, rillsoft_element_delete) by explicit routing.

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 says when to use rillsoft_task_delete or rillsoft_element_delete instead, and points to rillsoft_project_create for a fresh project. It also covers the refusal case (task UUID). This is a full routing map, not just a hint.

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

Deploy Server

Other Tools