Skip to main content
Glama

Readlink

Delete a shelf

delete_shelf
DestructiveIdempotent

Deletes a shelf. Its books stay in the library unless deleteBooks is true, which also removes every book on the shelf from the library. Cannot be undone: confirm with the reader first, and twice when deleteBooks is true.

Input Schema

NameRequiredDescriptionDefault
shelfIdYes
deleteBooksNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already declare destructiveHint=true and idempotentHint=true, but the description goes further by specifying exactly what is destroyed (the shelf, and the books only when deleteBooks is true) and that the operation cannot be undone. That is the highest-value information for a destructive tool and it is stated plainly.

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?

Three short sentences, front-loaded with the action and the cascade rule, then the irreversibility warning. No filler and nothing redundant with the title.

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?

For a two-parameter destructive tool with no output schema, the description covers scope of destruction, irreversibility, and confirmation requirements, which is nearly everything an agent needs. It omits edge behavior such as what happens if shelfId does not exist, a minor but real gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description must carry the load, and it fully explains deleteBooks as the switch that cascades book removal versus leaving books in the library. shelfId gets no description, but its name and required status make it unambiguous in a single-identifier tool.

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 ("Deletes a shelf") and immediately disambiguates from the book-level siblings by explaining that the books themselves are not deleted unless deleteBooks is true. An agent can distinguish this from remove_book_from_shelf or remove_book_from_library without reading either 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?

Gives clear procedural guidance: confirm with the reader first, and twice when deleteBooks is true, tied to the irreversibility of the call. It does not name an explicit alternative (e.g., rename_shelf or removing books individually) or state when-not to use it, so it stops short of full routing 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.

Resources