Remove a saved room
remove_favoriteRemove a room from the authenticated user’s favorites.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| room_id | Yes |
remove_favoriteRemove a room from the authenticated user’s favorites.
| Name | Required | Description | Default |
|---|---|---|---|
| room_id | Yes |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The destructiveHint annotation already signals destructive behavior, and the description aligns with it. The description adds a useful scoping detail: the operation affects the authenticated user's favorites, not a global list. It does not disclose whether the removal is permanent, idempotent, or what happens when the room is not already a favorite.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. Every word contributes meaning, and it avoids restating the annotation or schema details. It is appropriately sized for a simple one-parameter operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple tool with one parameter and annotations that signal destructiveness, but there is no output schema and no guidance on edge cases such as removing an already-absent favorite or whether the operation is reversible. The description is adequate but incomplete for an agent that needs to handle error cases confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides only the type and minimum for room_id, with 0% description coverage, so the description needed to compensate. It does not explicitly explain that room_id identifies the saved room to remove or that it must reference a current favorite of the authenticated user. The mapping is only implied by the tool name and sentence structure.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Remove'), a specific resource ('a room'), and a specific scope ('the authenticated user's favorites'). This clearly distinguishes it from sibling tools like add_favorite and list_my_favorites. The verb and resource are unambiguous and match the tool name and title.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: this tool removes a favorite for the authenticated user. However, it does not explicitly name alternatives or state when not to use it, leaving the usage distinction implied rather than explicit. It is still clear enough for an agent to infer the correct scenario.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.